一个有 n 个整数的数组 a,n是一个奇数。 每次可以选择数组里的一个元素 ai 并把这个元素加上 1。 在至多 k 次操作之后,数组的中位数最大能变成多少。 输入格式:多组输入 第一行两个整数 n,k(1≤n≤2×105,1≤k≤109)。 第二行 n 和整数 a1,a2,......,an。 输出格式:k 次操作后数组的中位数。 |
输入样例:
3 2
1 3 5
输出样例:
5
简单讲解
首先将数据读入nums[],排序后求得当前中位数的下标mid
因为一共可以加K,要求让nums[mid]最大
所有答案就是 "nums[mid]+k" ??? 显然是不对的!
因为当nums[mid] == n