比赛 20120718 评测结果 AAAAATTTTT
题目名称 找第k小的数 最终得分 50
用户昵称 王者自由 运行时间 5.039 s
代码语言 C++ 内存使用 1.05 MiB
提交时间 2012-07-18 09:56:08
显示代码纯文本
#include <cstdio>
#include <cstdlib>
#include <algorithm>
using namespace std;
const int N = 100000 + 10;
int n, m, a, b, c;
int A[N], B[N];
int main() {
    freopen("kth.in", "r", stdin);
    freopen("kth.out", "w", stdout);
    scanf("%d %d", &n, &m);
    for(int i=0; i<n; i++)
        scanf("%d", A+i);
    for(int i=0; i<m; i++) {
        scanf("%d %d %d", &a, &b, &c);
        a--, c--;
        copy(A+a, A+b, B);
        nth_element(B, B+c, B+(b-a));
        /*fprintf(stderr, "%d %d %d:\n", a, b, c);
        for(int j=0; j<(b-a); j++) fprintf(stderr, " %d ", B[j]);
        fprintf(stderr, "\n");*/
        printf("%d\n", B[c]);
    }
    return 0;
}