题意
N个数,找一个数E,使得这N个数中有E个数大于E
源码
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
bool cmp(int a,int b){
return a>b;
}
int arr[100005];
int main(){
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>arr[i];
}
sort(arr,arr+n,cmp);
if(n==1){
cout<<"0"<<endl;
return 0;
}
int ans;
for(int i=0;i<n;i++){
if(arr[i]>i+1)
ans=i+1;
else{
break;
}
}
cout<<ans;
return 0;
}