Pagini recente » Cod sursa (job #1941240) | Cod sursa (job #2907621) | Cod sursa (job #1009759) | Cod sursa (job #804808) | Cod sursa (job #1588645)
#include <fstream>
#include <deque>
using namespace std;
ifstream fi ("deque.in");
ofstream fo ("deque.out");
long long n,l,s,k,i,a[5000007];
deque<int>dq;
deque<int>::iterator it;
int main()
{
fi>>n>>k;
for (i=1;i<=n;i++) fi>>a[i];
for (i=1;i<=n;i++)
{
while (!dq.empty())
if (dq.back()+k-1<i) dq.pop_back();
else break;
while (!dq.empty())
if (a[i]<a[dq.front()]) dq.pop_front();
else break;
dq.push_front(i);
if (i>=k) s=s+a[dq.back()];
}
fo<<s;
return 0;
}