这里易错的地方在于,超过N英里的天数不一定是N,只要大于N就行,如果设置为等于N,对于(5) 10 10 10 10 5这种就会没有答案

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main {
    public static void main(String[] args) throws IOException{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        int N=Integer.parseInt(br.readLine());
        String[] strs=br.readLine().split(" ");
        int[] datas=new int[N];
        for(int i=0;i<N;i++) {
        	datas[i]=Integer.parseInt(strs[i]);
        }
        Arrays.sort(datas);
        int E=0;
        for(int i=N;i>=0;i--) {
        	int count=0;//超过N英里的天数
        	for(int j=datas.length-1;j>=0;j--) {
        		if(datas[j]>i) {
        			count++;
        		}else {
        			break;
        		}
        	}
        	if(count>=i) {
        		E=i;
        		break;
        	}
        }
        System.out.print(E);
    }
}