第几大数问题the kth number
Problem description
Find the kth largest element in an unsorted array A . Note that it is the kth largest element in
the sorted order, not the kth distinct element. The range of length of A is N(1≤N≤5,000,000) and the element (integer) in A is no bigger than 10,000,00000.
问题描述在未排序的数组A中找到第k个最大元素。 请注意,它是排序顺序中第k个最大的元素,而不是第k个不同的元素。 A的长度范围是N(1≤N≤5,000,000),A中的元素(整数)不大于10,000,00000。
Input
Line 1: the length of the unsorted array A and the index k.
Line 2: the all elements in array A and split by spaces
Output
Line 1: A single integer that is the kth largest element in an unsorted array A.
Sample Input 1
8 2
1 3 5 7 4 2 6 8
Sample Output 1
7
Sample Input 2
8 2
1 1 2 2 3 3 4 4
Sample Output 2
4
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn = 5e6 + 10;
int a[maxn];
int main() {
int n,k; cin >> n >> k;
for (int i = 0; i < n; i++) scanf("%d",&a[i]);
sort(a, a + n);
cout << a[n - k] << endl;
return 0;
}