Pagini recente » Cod sursa (job #866958) | Cod sursa (job #2612436) | Cod sursa (job #349949) | Cod sursa (job #1616218) | Cod sursa (job #698231)
Cod sursa(job #698231)
#include <deque>
#include <fstream>
using namespace std;
deque<long long> q,w;
long long n,k,x,i,s;
int main ()
{ifstream f("deque.in");
ofstream g("deque.out");
f>>n>>k;
for(i=1;i<k;i++)
{f>>x;
while((!q.empty())&&x<q.front())
{q.pop_front();
w.pop_front();
}
q.push_front(x);
w.push_front(i);
}
for(i=k;i<=n;i++)
{f>>x;
while((!q.empty())&&x<q.front())
{q.pop_front();
w.pop_front();
}
q.push_front(x);
w.push_front(i);
if(w.back()+k-1<i)
{q.pop_back();
w.pop_back();}
s+=q.back();
}
g<<s;
f.close(); g.close();
return 0;
}