提交时间:2024-03-09 11:21:18
运行 ID: 136646
#include <bits/stdc++.h> using namespace std; int a[10000000], k; void quickSort(int l, int r) { int i = l, j = r, mid = a[(l + r) / 2]; do { while (a[j] > mid) j--; while (a[i] < mid) i++; if (i <= j) { swap(a[i], a[j]); i++; j--; } } while (i <= j); if (k <= j) quickSort(l, j); else if (i <= k) quickSort(i, r); else { printf("%d", a[j + 1]); exit(0); } } int main() { int n; scanf("%d%d", &n, &k); for (int i = 0; i < n; i++) scanf("%d", &a[i]); quickSort(0, n - 1); }