Pagini recente » Cod sursa (job #2923117) | Cod sursa (job #42754) | Cod sursa (job #2586774) | Cod sursa (job #716395) | Cod sursa (job #1953137)
#include <fstream>
#include <deque>
using namespace std;
ifstream fi("secventa.in");
ofstream fo("secventa.out");
int A[500001];
int n,k;
deque<int> D;
int rez;
int inc,sf;
int main()
{
fi>>n>>k;
for(int i=1;i<=n;i++)
fi>>A[i];
rez=-30001;
D.push_back(1);
for(int i=2;i<=n;i++)
{
while(!D.empty() && A[i]<=A[D.back()])
D.pop_back();
D.push_back(i);
while(!D.empty() && i-D.front()>=k)
D.pop_front();
if(!D.empty() && i>=k&& A[D.front()]>rez)
rez=A[D.front()],inc=i-k+1,sf=i;
}
fo<<inc<<" "<<sf<<" "<<rez;
fi.close();
fo.close();
return 0;
}