Pagini recente » Cod sursa (job #2543310) | Cod sursa (job #1521012) | Cod sursa (job #1277627) | Cod sursa (job #786877) | Cod sursa (job #1530284)
/*
#include<iostream>
#include<fstream>
#include<deque>
#define mkp (make_pair)
using namespace std;
ifstream si("secventa.in");
ofstream so("secventa.out");
//*/
//*
#include<cstdio>
FILE* si=fopen("secventa.in","r");
FILE* so=fopen("secventa.out","w");
//*/
#include<deque>
#define mkp (make_pair)
using namespace std;
deque< pair<int,int> > v;
inline void adaug(int el,int poz)
{
while(!v.empty()&&v.back().first>=el)
{
v.pop_back();
}
v.push_back(mkp(el,poz));
return;
}
int main()
{
int n,k;
fscanf(si,"%d %d",&n,&k);
int i,a;
for(i=0;i<k;++i)
{
fscanf(si,"%d",&a);
adaug(a,i);
}
int maxx=v.front().first,poz=0;
for(i=k;i<n;++i)
{
fscanf(si,"%d",&a);
adaug(a,i);
if(v.front().second<=i-k)
{
v.pop_front();
}
if(maxx<v.front().first)
{
maxx=v.front().first;
poz=i-k+1;
}
}
fprintf(so,"%d %d %d",poz+1,poz+k,maxx);
}