import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(); //参赛的总人数
int x = sc.nextInt();//晋升和淘汰的人数区间[x,y]
int y = sc.nextInt();
int[] score = new int[n];//输入每个人的成绩
for(int i=0;i<n;i++) {
score[i]=sc.nextInt();
}
//对数组进行排序
Arrays.sort(score);
int len = score.length;
List<Integer> res = new ArrayList<Integer>();//结果集。存放满足条件的m
//尝试m的值,看其是否满足晋升和淘汰的人数区间
for(int i=0;i<n;i++) {
int m = score[i];//当前m的值
int win = len-i-1;//晋升的人数
int fail = i+1;//淘汰的人数
if(win>=x && win <=y && fail>=x && fail<=y) {
res.add(m);
continue;
}
}
//查看结果集中符合要求的m
if(res.size()==0) {
System.out.println(-1);
}else if(res.size()==1) {
System.out.println(res.get(0));
}else {
System.out.println(res.get(0));
}
}
}
美团2021校招笔试-编程题(通用编程试题,第10场)
最新推荐文章于 2024-03-24 17:47:11 发布