Pagini recente » Cod sursa (job #3304472) | Cod sursa (job #3339990) | Cod sursa (job #3329439) | Cod sursa (job #2806686) | Cod sursa (job #3320951)
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
struct z{
int val, poz;
};
deque <z> v;
int main() {
int n,k,x;
long long s=0;
f>>n>>k;
for(int i=1;i<=n;i++)
{
f>>x;
while(!v.empty()&&v.back().val>x)
v.pop_back();
v.push_back({x,i});
while(!v.empty()&&v.front().poz==i-k)
v.pop_front();
if(i>=k&&n>=i)
s+=v.front().val;
}
cout<<s<<endl;
return 0;
}