找第k小的数
-
Description
- 给出一串数列,输出其中第k小的数 Input
- 对于每一个测试案例, 通过键盘逐行输入,第1行是输入整数n 和 k(如果这两个整数是0 ,就表示结束,不需要再处理),n表示有n个数,k表示第k小的数,接下来一行输入n个数 Output
- 输出第k小的数的值
Example Input
5 2
1 2 3 4 5
Example Output
2
-
思路分析
- 直接使用 sort()函数进行排序,则下标为 k-1的数就是第k小的数
代码块
//sort()函数排序,时间复杂度为 nlogn
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int a[10000];
int n, k;
cin >> n >> k;
for(int i = 0; i < n; i++){
cin >> a[i];
}
sort( a, a + n );
cout << a[k-1];
return 0;
}