Pagini recente » Cod sursa (job #1003975) | Cod sursa (job #2575191) | Cod sursa (job #3156391) | Cod sursa (job #2934801) | Cod sursa (job #1588642)
#include <fstream>
#include <deque>
using namespace std;
ifstream fi ("deque.in");
ofstream fo ("deque.out");
int 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;
}