您的位置:首页 > 其它

1117. Eddington Number(25)解题报告

2016-12-31 16:52 239 查看
简单题。

#include <stdio.h>
#include <stdlib.h>
#define N 100000

int main(int argc, const char * argv[]) {
int n, e, *array, tmp, i;
setvbuf(stdin, calloc(1 << 20, sizeof(char)), _IOFBF, 1 << 20);
scanf("%d", &n);
array = (int *)calloc(n + 2, sizeof(int));
for(i = 0; i < n; i++){
scanf("%d", &tmp);
if(tmp > n){
array[n + 1]++;
}
else{
array[tmp]++;
}
}
i = n;
e = array[n + 1];
while(i >= 0 && e < i){
e += array[i--];
}

printf("%d\n", i);
free(array);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: