【思路】:排序。注意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