题目描述:
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
保证输入的整数最后一位不是0。
输入描述:
输入一个int型整数
输出描述:
按照从右向左的阅读顺序,返回一个不含重复数字的新的整数
示例:
输入:
9876673
输出:
37689
解题思路:
数字从0到9,总共10个数字,建立一个数组,用来作数字是否出现过的标记,比如a[5]=1,则5这个数字出现过了;将输入的int型数值按位数往前依次分析,如果首次碰到该数字,说明其数组对应位置为0,等下次再碰到就是1,如果为1则不输出。
测试代码:
#include <iostream> using namespace std; int main(void) { int array[10] = { 0 }; int number; cin>>number; for(;0 < number;number /= 10) { if (!array[number % 10]) { array[number % 10] = 1; cout<<number % 10; } } return 0; }