Pagini recente » Cod sursa (job #3158482) | Cod sursa (job #3217135) | Cod sursa (job #1047960) | Cod sursa (job #947738) | Cod sursa (job #3252672)
#include <fstream>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <queue>
#include <stack>
#include <climits>
using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
const int LMAX = 1005;
int main() {
int n, i, u, v, k, x;
fin>>n>>k;
deque<pair<int, int>> dq;
for (i = 1; i <= k - 1; i++) {
fin>>x;
while (!dq.empty() && dq.back().first > x) {
dq.pop_back();
}
dq.push_back({x, i});
}
v = INT_MIN;
for (i = k; i <= n; i++) {
fin>>x;
while (!dq.empty() && dq.back().first > x) {
dq.pop_back();
}
dq.push_back({x, i});
if (dq.front().second == i - k) dq.pop_front();
if (v < dq.front().first) {
v = dq.front().first;
u = i;
}
}
fout<<u - k + 1<<" "<<u<<" "<<v;
fin.close();
fout.close();
return 0;
}