Pagini recente » Cod sursa (job #1606434) | Cod sursa (job #763970) | Cod sursa (job #1892313) | Cod sursa (job #172900) | Cod sursa (job #947129)
Cod sursa(job #947129)
#include <fstream>
#include <deque>
using namespace std;
long long int v[500005];
int main()
{
ifstream cin("secventa.in");
ofstream cout("secventa.out");
long long int k,n,i;
deque<long long int> coada;
cin>>n>>k;
long long int baza=-100000;
long long int st=-1,dr=-1;
for(i=0;i<n;i++)
{
cin>>v[i];
while(!coada.empty())
if((i-coada.front())>=k)
coada.pop_front();
else
break;
while(!coada.empty())
if(v[coada.back()]>=v[i])
coada.pop_back();
else
break;
coada.push_back(i);
if((i+1)>=k)
{
cout<<v[coada.front()]<<endl;
if(v[coada.front()]>baza)
{
baza=v[coada.front()];
st=i+2-k;
dr=i+1;
}
}
}
cout<<st<<' '<<dr<<' '<<baza<<'\n';
cin.close();
cout.close();
return 0;
}