C++-蓝桥杯-错误票据[2013真题][水题][桶排序]

在一连串不定长的数字中找出断号和重号的输出

数据保证只有唯一解

 1 #include <iostream>
 2 #include <algorithm>
 3 using namespace std;
 4 const int N=1e5+10;
 5 int ID[N],cnt,Bucket[N],MaxID=0,MinID=2147483647;
 6 int main(){
 7     int n;cin>>n;
 8     while(scanf("%d",&ID[++cnt])!=EOF){
 9         Bucket[ID[cnt]]++;
10         MaxID=max(MaxID,ID[cnt]);
11         MinID=min(MinID,ID[cnt]);
12     }
13     for(int i=MinID;i<=MaxID;i++)if(Bucket[i]==0)printf("%d ",i);
14     for(int i=MinID;i<=MaxID;i++)if(Bucket[i]==2)printf("%d\n",i);
15     return 0;
16 }

猜你喜欢

转载自www.cnblogs.com/JasonCow/p/12403108.html