提取不重复的整数

来源:互联网 发布:淘宝店铺售假24分重开 编辑:程序博客网 时间:2024/05/10 10:29

/*
题目描述
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

输入描述:
输入一个int型整数

输出描述:
按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

输入例子:
9876673

输出例子:
37689
*/

代码

#include<iostream>#include<string.h>using namespace std;int GetNewInt(int Num){    int hash[10];    memset(hash, 0, sizeof(hash));//包括头文件string.h    int flag_ifminus = 0, temp = 0, k = 0, Output = 0;    if (Num < 0)    {        flag_ifminus = 1;        Num = -Num;    }    while (Num)    {        temp = Num % 10;        if (hash[temp] == 0)        {            hash[temp] = 1;            Output = temp + 10 * Output;            k++;        }        Num /= 10;    }    if (flag_ifminus == 1)        Output = -Output;    return Output;}int main(){    int Num_Input = 0;    cin >> Num_Input;//当输入的数值超过INT范围,VS2013自动处理为0    cout << GetNewInt(Num_Input) << endl;}
0 0