【思路】:排序。注意sort的降序写法。前一个参数是初始位置,中间一个是结束位置,但是需要包括。不如理解成从初始位置向后的个数。
【AC代码】:
#include <iostream>
#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstring>
using namespace std;
#define MAX 1000+5
int compare(int a, int b)
{
return a>b;
}
int main()
{
freopen("in.txt", "r", stdin);
int n = 0, a[MAX], i = 0, j = 0;
//input
cin >> n;
for (i = 0; i < n; i++)
cin >> a[i];
int T = 0;
cin >> T;
while (T--)
{
int b[MAX];
for (i = 0; i < n; i++)
b[i] = a[i];
int l = 0, r = 0, K = 0;
cin >> l >> r >> K;
sort(b+l-1, b+r, compare);
cout << b[l-1+K-1] << endl;
}
return 0;
}原文:http://blog.csdn.net/weijj6608/article/details/44657355