求 n 个整数中第 k(1≤k≤n) 大的整数。
输入格式
n 和 k
n 个整数
输出格式
第 k 大的整数
输入样例
10 3
2 5 -1 9 25 0 12 4 -7 12
输出样例
12
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
#include <stdio.h>
#include <stdlib.h>// 比较函数,用于 qsort
int compare(const void *a, const void *b) {return (*(int *)b - *(int *)a); // 从大到小排序
}int main() {int n, k;scanf("%d %d", &n, &k);int arr[n];for (int i = 0; i < n; i++) {scanf("%d", &arr[i]);}// 使用 qsort 对数组进行排序qsort(arr, n, sizeof(int), compare);// 输出第 k 大的整数printf("%d\n", arr[k-1]);return 0;
}