zoukankan      html  css  js  c++  java
  • 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
    //答案是柳婼大佬的。
    //关于思路我没有完全理解暂时存疑
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    const int maxn = 100010;
    int arr[maxn];
    
    bool cmp(int a,int b){
        return a > b;
    }
    
    int main(){
        int n;
        scanf("%d",&n);
        for(int i = 1; i <= n; i++ ){
            scanf("%d",&arr[i]);
        }
        sort(arr+1,arr+n+1,cmp);
        int ans = 0,p = 1;
        while(ans <= n && arr[p] > p){
            ans++;
            p++;
        }
        printf("%d",ans);
        return 0;
    }
  • 相关阅读:
    数全排列问题
    DNA repair问题
    分治问题
    贪心问题
    STL简单应用问题
    求一个数阶乘后位数问题
    《DSP using MATLAB》Problem 2.6
    《DSP using MATLAB》示例Example 10.4
    《DSP using MATLAB》Problem 2.5
    《DSP using MATLAB》Problem 2.4
  • 原文地址:https://www.cnblogs.com/wanghao-boke/p/10400690.html
Copyright © 2011-2022 走看看