【入门】k个最接近的数
给定一个长度为 n 的 排序好 的数组 a ,两个整数 k 和 x ,从数组 a 中找到 最靠近 x(两数之差最小)的 k 个数。返回的结果必须要是 按升序排好 的。
整数 a 比整数 b 更接近 x 需要满足以下两个条件之一:
- ∣a−x∣<∣b−x∣
- ∣a−x∣==∣b−x∣ 并且 a<b
输入格式
第一行包含 3 个正整数 n,k,x(1≤n,k≤105,−104≤x≤104)
第二行包含 n 个正整数,表示数组 a(−104≤ai≤104)
数组 a 保证 按从小到大排序
输出格式
输出 1 行包含 k 个数,表示每个询问的答案,按升序排列
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=3 的 k=4 个数为 [1,2,3,4]
- 注意 1 比 5 更靠近 3
【数据范围】
- 1≤n,k≤105
- −104≤x,a[i]≤104
请思考后再点击查看提示
来源