Pagini recente » Istoria paginii runda/qwerty-1/clasament | Cod sursa (job #94789) | Rating Petan Paul (paulpetan) | Cod sursa (job #1520666) | Cod sursa (job #1257046)
#include<fstream>
#include<deque>
#define NMAX 500010
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
int n, k, a[NMAX];
deque<int> dq;
void citeste()
{
f>>n>>k;
for (int i=1; i<=n; ++i) f>>a[i];
}
void rezolva()
{
int maxim=-30001, maximStart;
for (int i=1; i<=n; ++i)
{
if (!dq.empty() && dq.front()==i-k) dq.pop_front();
while (!dq.empty() && a[dq.back()]>a[i]) dq.pop_back();
dq.push_back(i);
if (a[dq.front()]>maxim)
{
maxim=a[dq.front()];
maximStart=dq.front();
}
}
g<<maximStart<<" "<<maximStart+k-1<<" "<<maxim<<"\n";
}
int main()
{
citeste();
rezolva();
return 0;
}