king 选 太子

king 选 太子

时间限制:3000 ms  |  内存限制:65535 KB
难度:1
 
描述

啊,从前有一个国家。此国兵强马壮,但是国王却身体不好。于是就想挑一位太子出来;

但是问题来了,国王不知道他有几个孩子(这国王糊涂吧!),他只知道他的孩子的年龄都是不同的。同时这个国王也有要求,他认为孩子年龄太大的过于迂腐,而年龄太小又不成熟,(这孩子挑的也太难了吧),他就想要年龄在他们孩子之间是最中间的(如果孩子的个数为偶数,那么选中间的两个皇子中年龄较大的那个)。

 
输入
第一行有一个整数T,代表有T组数据(T<=10)
第二行有一个整数n(0<n<=15),紧随着有n个数代表有n个皇子(年龄都是整数)
输出
每行输出这串数字的太子的年龄
样例输入
2
3
1 2 3
4
1 2 3 4 
样例输出
2
3

package demo4;

import java.util.Arrays;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		int caseNo = input.nextInt();
		for (int i = 1;i<=caseNo;i++) {
			int number = input.nextInt();
			int [] array = new int[number];
			
			for (int j = 0;j<array.length;j++) {
				array[j] = input.nextInt();
			}
			
			//排序
			Arrays.sort(array);
			solution(array);
			
			
		}
	}

	private static void solution(int[] array) {
		int num = array.length;
		//分情况
		if (num%2 == 1) {
			System.out.println(array[num/2]);
		} else {
			//比较大小
			int num1 = array[num/2-1];
			int num2 = array[num/2];
			if (num1 > num2) {
				System.out.println(num1);
			} else {
				System.out.println(num2);
			}
		}
		
	}
	
}

  

原文地址:https://www.cnblogs.com/airycode/p/6591649.html