Pagini recente » Cod sursa (job #2938760) | Cod sursa (job #373226) | Cod sursa (job #1236830) | Cod sursa (job #1467633) | Cod sursa (job #483602)
Cod sursa(job #483602)
#include <fstream>
#include <deque>
using namespace std;
ifstream in("secventa.in");
ofstream out("secventa.out");
deque < pair <int,int> > Q;
int vmax,p,i,N,K,v;
int main()
{
in>>N>>K;
bool ok = 0;
Q.push_back(make_pair(50000,-100));
for(i=0;i<N;i++)
{
if(i+1>=K) ok =1 ;
in>>v;
while(!Q.empty()&&Q.back().first>=v)
Q.pop_back();
Q.push_back(make_pair(v,i));
while(!Q.empty()&&Q.front().second<=i-K)
Q.pop_front();
if(Q.front().first>vmax&&ok)
vmax = Q.front().first,p = i+1;
}
out<<p-K+1<<' ' <<p<<' '<<vmax;
return 0;
}