#1133 : 二分·二分查找之k小数
时间限制:10000ms
单点时限:1000ms
内存限制:256MB
- 样例输入
-
10 4 1732 4176 2602 6176 1303 6207 3125 1 1011 6600
- 样例输出
-
1732
描述
在上一回里我们知道Nettle在玩《艦これ》,Nettle的镇守府有很多船位,但船位再多也是有限的。Nettle通过捞船又出了一艘稀有的船,但是已有的N(1≤N≤1,000,000)个船位都已经有船了。所以Nettle不得不把其中一艘船拆掉来让位给新的船。Nettle思考了很久,决定随机选择一个k,然后拆掉稀有度第k小的船。 已知每一艘船都有自己的稀有度,Nettle现在把所有船的稀有度值告诉你,希望你能帮他找出目标船。
输入
第1行:2个整数N,k。N表示数组长度,
第2行:N个整数,表示a[1..N],保证不会出现重复的数,1≤a[i]≤2,000,000,000。
输出
第1行:一个整数t,表示t在数组中是第k小的数,若K不在数组中,输出-1。
sort排序就行了 看题意是想让我自己写快排吗?????
#include <stdio.h> #include <algorithm> using namespace std; int num[1000000+5]; int main() { int n,x; while(~scanf("%d %d",&n,&x)) { int n1=n; while(n1--) scanf("%d",&num[n1]); sort(num,num+n); printf("%d\n",num[x-1]); } return 0; }
时间: 2024-12-17 22:16:30