7-1 第 k 大的整数** (20 分)(模拟)

7-1 第 k 大的整数** (20 分)
求 n 个整数中第 k(1≤k≤n) 大的整数。

输入格式
n 和 k
n 个整数

输出格式
第 k 大的整数

输入样例
10 3
2 5 -1 9 25 0 12 4 -7 12
输出样例
12

solution:利用STL,咱们可以将代码压缩至很短

#include 
using namespace std;
int arr[5000100];
int main()
{
    int n,k;
    scanf("%d%d", &n, &k);
    for ( int i = 0 ; i < n ; ++ i )scanf("%d", &arr[i]);
    nth_element(arr, arr + n - k, arr + n);
    printf("%d\n", arr[n - k]);
    return 0;
}

你可能感兴趣的:(模拟)