Pagini recente » Cod sursa (job #1118595) | Cod sursa (job #2468668) | Cod sursa (job #3308424) | Cod sursa (job #1715084) | Cod sursa (job #3320953)
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
struct z{
long long val, poz;
};
deque <z> v;
int main() {
long long 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;
}