整半天都没明白到底什么意思,看了别人的才知道是求N天里有E天的骑行路程超过E,求最大的E。换言之就是一串数字里有M个比E大,求满足M>E的最大的E。
#include <bits/stdc++.h>
#define INF 9999999
using namespace std;
const int maxn=100010;
int m,n,s=0,e=0;
int arr[maxn];
int main(){
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&arr[i]);
}
sort(arr+1,arr+n+1);
int idx=1,val=arr[n];
while(idx<=n&&arr[n+1-idx]>idx)idx++;
printf("%d",idx-1);
}
本文探讨了一种算法问题,即在N天的骑行路程中找出有E天的路程超过E的最大值E。通过分析一串数字,找到M个比E大的数,满足M>E条件下的最大E值。使用C++实现,包括输入处理、排序和查找过程。
620

被折叠的 条评论
为什么被折叠?



