题解 | #提取不重复的整数#
提取不重复的整数
https://www.nowcoder.com/practice/253986e66d114d378ae8de2e6c4577c1
#include <stdio.h> int main() { int num,count; int bits[10]; int hash[10]={}; scanf("%d",&num); count=0; for(int i=0;;i++){ if(num>0){ bits[i]=num%10; num/=10; hash[bits[i]]=1; count++; } else break; } for(int i=0;i<count;i++){ if(hash[bits[i]]!=0){ printf("%d",bits[i]); hash[bits[i]]=0; } } printf("\n"); return 0; }
按位获取数据,然后根据hash直接剔除重复的,因为每位的数据不超过10,所以存储的hash只需要在1-10之间即可