1060 爱丁顿数 (25 分)

时间:2019-08-25 17:58:23   收藏:0   阅读:108

题目:1060 爱丁顿数 (25 分)

英国天文学家爱丁顿很喜欢骑车。据说他为了炫耀自己的骑车功力,还定义了一个“爱丁顿数” E ,即满足有 E 天骑车超过 E 英里的最大整数 E。据说爱丁顿自己的 E 等于87。

现给定某人 N 天的骑车距离,请你算出对应的爱丁顿数 E(≤)。

输入格式:

输入第一行给出一个正整数 N (≤),即连续骑车的天数;第二行给出 N 个非负整数,代表每天的骑车距离。

输出格式:

在一行中给出 N 天的爱丁顿数。

输入样例:

10
6 7 6 9 3 10 8 2 7 8

输出样例:

6

思路:

代码:

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <cctype>
 4 #include <iostream>
 5 #include <sstream>
 6 #include <cmath>
 7 #include <algorithm>
 8 #include <string>
 9 #include <stack>
10 #include <queue>
11 #include <vector>
12 #include <map>
13 using namespace std;
14 
15 int cmp(int a, int b)
16 {
17     return a > b;
18 }
19 
20 int main()
21 {
22     int n, e[100005];
23     scanf("%d", &n);
24     for(int i = 0; i < n; i++)
25     {
26         scanf("%d", &e[i]);
27     }
28     sort(e, e + n, cmp);
29     int sum = 0;
30     for(int i = 0; i < n; i++)
31     {
32         if(e[i] > i+1)
33             sum++;
34         else
35             break;
36     }
37     printf("%d\n", sum);
38     return 0;
39 }

 

总结:

  读懂读对题目是做题的开始。不然无法下手。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!