Pagini recente » Cod sursa (job #178959) | Cod sursa (job #1952446) | Cod sursa (job #304630) | Cod sursa (job #2902640) | Cod sursa (job #1972790)
#include <fstream>
#include <deque>
#include <climits>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
deque<int>c;
long long n,i,K,s,v[5000001],minim=INT_MAX;
int main()
{
f>>n>>K;
for(i=1;i<=n;i++)
f>>v[i];
c.push_back(1);
for(i=2;i<=n;i++)
{
while(c.front()<=i-K&&!c.empty()){c.pop_front();}
while(!c.empty()&&v[c.back()]>=v[i])c.pop_back();
c.push_back(i);
if(i>=K){s+=v[c.front()];
}
}
g<<s;
return 0;
}