CCF 201612-1中间数 import java.util.ArrayList; import java.util.Collections; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int num = Integer.parseInt(scanner.nextLine()); ArrayList<Integer> arrayList = new ArrayList<>(); for(int i=0 ; i<num ; i++) { int data = scanner.nextInt(); arrayList.add(data); } scanner.close(); Collections.sort(arrayList); int middle = arrayList.get((arrayList.size()-1)/2); int countLeft = 0; int countRight = 0; for(int i=0 ; i<num ; i++) { if(arrayList.get(i)<middle) { countLeft++; }else if(arrayList.get(i)>middle) { countRight++; } } if(countLeft==countRight) { System.out.print(middle); }else { System.out.print("-1"); } } }