Pagini recente » Cod sursa (job #2850689) | Cod sursa (job #2378385) | Cod sursa (job #1939350) | Cod sursa (job #2878125) | Cod sursa (job #1861742)
#include <fstream>
#include <deque>
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
long long n,i,k,m,cst,cdr,cstm,cdrm;
struct elem
{
int val,poz;
}x;
deque <elem> v;
int main()
{
f>>n>>k;
for(i=1;i<=k;i++)
{
f>>x.val;
x.poz=i;
while(!v.empty()&&v.back().val>x.val)
v.pop_back();
v.push_back(x);
}
m=v.front().val;
cstm = 1;
cdrm = k;
cst=1;cdr=k;
for(i=k+1;i<=n;i++)
{
cst++;
cdr++;
f>>x.val;x.poz=i;
if(v.front().poz<cst)v.pop_front();
while(!v.empty()&&v.back().val>x.val)
v.pop_back();
v.push_back(x);
if(v.front().val>m)
{
cstm=cst;
cdrm=cdr;
m=v.front().val;
}
}
g<<cstm<<" "<<cdrm<<" "<<m;
return 0;
}