Pagini recente » Cod sursa (job #1121686) | Cod sursa (job #224392) | Cod sursa (job #59489) | Cod sursa (job #2342450) | Cod sursa (job #1850182)
#include <iostream>
#include <fstream>
#include <queue>
using namespace std;
int n,k,v[500005],m=-100000,maxst,maxdr;
typedef pair<int, int> ii;
deque <ii> q;
int main() {
ifstream cin("secventa.in");
ofstream cout("secventa.out");
cin>>n>>k;
for(int i=1;i<=n;i++)
cin>>v[i];
for(int i=1;i<=n;i++) {
while(!q.empty() && q.back().first>=v[i])
q.pop_back();
q.push_back(ii(v[i],i));
if(i>=k) {
while(!q.empty() && i-q.front().second+1>k)
q.pop_front();
if(q.front().first>m) {
m=q.front().first;
maxdr=i;
maxst=i-k+1;}}}
cout<<maxst<<" "<<maxdr<<" "<<m;
return 0;}