Pagini recente » Cod sursa (job #2650008) | Cod sursa (job #1665370) | Cod sursa (job #2823324) | Cod sursa (job #1424575) | Cod sursa (job #2680265)
#include <fstream>
#include <deque>
using namespace std;
ifstream cin("secventa.in");
ofstream cout("secventa.out");
deque < long long > d;
deque < long long > poz;
const int nmax=-30002;
int v[600005];
int main()
{
long long n,k,i,maxim=-30002,ind1,ind2;
cin>>n>>k;
for(i=1; i<=n; i++)
{
cin>>v[i];
while(v[i]<=d.front()&&d.size()>0)
{
d.pop_front();
poz.pop_front();
}
d.push_front(v[i]);
poz.push_front(i);
if(i>=k)
if(v[poz.back()]>maxim)
{
maxim=d.back();
ind1=i-k+1;
ind2=i;
}
if(poz.back()==i-k+1)
{
d.pop_back();
poz.pop_back();
}
}
cout<<ind1<<" "<<ind2<<" "<<maxim;
return 0;
}