解题思路:因为数据是连续的,桶排序,然后找出始端和末端, 如果值为0就是遗漏,值为2就是重复
注意事项:
参考代码:
#include<iostream>
#include<cstring>
using namespace std;
int main(){
int n,x;
cin >> n;
int a[100001];
int maxx = 0;
int minn = 100001;
memset(a,0,sizeof(a));
while(cin >> x){
a[x]++;
maxx = max(maxx,x);
minn = min(minn,x);
}
int nn, mm;
for(int i = minn+1; i < maxx; i++){
if(a[i] == 2) nn = i;
if(a[i] == 0) mm = i;
}
cout << mm << " " << nn << endl;
}
0.0分
0 人评分
【绝对值排序】 (C语言代码)浏览:717 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:668 |
剪刀石头布 (C语言代码)不知道怎么直接在scanf中用枚举变量浏览:1315 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:904 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:572 |
简单的a+b (C语言代码)浏览:577 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:326 |
1908题解浏览:640 |
C二级辅导-计负均正 (C语言代码)浏览:481 |
C语言程序设计教程(第三版)课后习题10.7 (用指针求解)浏览:1475 |