#include <iostream>
#include <string>
#include <algorithm>
#include <cmath>
using namespace std;
//第K小的数
int main() {
int n;
cin >> n;
int arr[n];
for (int i = 0; i < n; i++) {
cin >> arr[i];
}
int K;
cin >> K;
sort(arr, arr + n);
int count = 0;
for (int i = 0; i < n; i++) {
if (arr[i] != arr[i + 1]) count++;
if (count == K) cout << arr[i];
}
return 0;
}
定义一个变量count记录当前元素是第几小,只在排序后的数组元素前后不相等时,count++。

京公网安备 11010502036488号