C. 【入门】k个最接近的数

    传统题 100ms 32MiB

【入门】k个最接近的数

【入门】k个最接近的数

给定一个长度为 nn排序好 的数组 a ,两个整数 kkxx ,从数组 a 中找到 最靠近 xx(两数之差最小)的 kk 个数。返回的结果必须要是 按升序排好 的。

整数 aa 比整数 bb 更接近 xx 需要满足以下两个条件之一:

  • ax<bx|a - x| < |b - x|
  • ax==bx|a - x| == |b - x| 并且 a<ba < b

输入格式

第一行包含 33 个正整数 n,k,x(1n,k105,104x104)n, k, x(1 \le n, k \le 10^5, -10^4 \le x \le 10^4)

第二行包含 nn 个正整数,表示数组 a(104ai104)a(-10^4 \le a_i \le 10^4)

数组 aa 保证 按从小到大排序

输出格式

输出 11 行包含 kk 个数,表示每个询问的答案,按升序排列

5 4 3
1 2 3 4 5
1 2 3 4
6 4 -1
1 1 2 3 4 5
1 1 2 3

提示

【样例 1 解释】

  • 最接近 x=3x=3k=4k=4 个数为 [1,2,3,4][1, 2, 3, 4]
  • 注意 1155 更靠近 33

【数据范围】

  • 1n,k1051 \le n, k \le 10^5
  • 104x,a[i]104-10^4 \le x, a[i]\le 10^4
请思考后再点击查看提示

来源