Pagini recente » Cod sursa (job #97276) | Cod sursa (job #1359472) | Cod sursa (job #1076097) | Cod sursa (job #1207464) | Cod sursa (job #2589382)
#include<iostream>
#include<fstream>
#include<deque>
using namespace std;
int main()
{
int n, a[5000000],k;
long long s = 0;
deque<int>d;
ifstream in;
ofstream out;
in.open("deque.in");
out.open("deque.out");
in>>n>>k;
for(int i=0;i<n;i++)
{
in>>a[i];
while(!d.empty()&& a[d.back()]>=a[i])
d.pop_back();
d.push_back(i);
if(i-d.front()<k && i+1>=k)
s+=a[d.front()];
else if(i>=k)
{
d.pop_front();
s+=a[d.front()];
}
}
out<<s;
}