Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
136610 谢思涵 第k小数1 C++ 运行超时 80 1000 MS 7696 KB 713 2024-03-09 11:07:01

Tests(8/10):


#include <iostream> using namespace std; int n, k, a[1000100], original[1000100]; void sort(int l, int r) { if(l >= r) return; int mid = (l + r) / 2; sort(l, mid); sort(mid + 1, r); int b[100100] = {0}; for(int i = l; i <= r; i++) b[i] = a[i]; int i = l, j = mid + 1, cur; for(cur = l; cur <= r; cur++) { if(b[i] < b[j]) a[cur] = b[i++]; else a[cur] = b[j++]; if(i > mid || j > r) break; } while(i <= mid) a[++cur] = b[i++]; while(j <= r) a[++cur] = b[j++]; } int main() { cin >> n >> k; for(int i = 1; i <= n; i++) {cin >> a[i]; original[i] = a[i];} sort(1, n); for(int i = 1; i <= n; i++) if(original[i] == a[k]) {cout << i << endl; return 0;} return 0; }


测评信息: