Pagini recente » Cod sursa (job #1349514) | Cod sursa (job #2966748) | Cod sursa (job #922117) | Cod sursa (job #951343) | Cod sursa (job #2671428)
#include <fstream>
#include <deque>
#include <utility>
using namespace std;
typedef long long ll;
deque<pair<ll,int> > Q;
ifstream fin("deque.in");
ofstream fout("deque.out");
int main()
{
ios_base::sync_with_stdio(false);
fin.tie(NULL);
fout.tie(NULL);
ll n,i,x,k,ans;
fin>>n>>k;
ans=0;
for(i=1;i<=n;i++){
fin>>x;
while(!Q.empty() and Q.back().first>x)
Q.pop_back();
Q.push_back(make_pair(x,i));
if(Q.front().second<=i-k)
Q.pop_front();
if(i>=k)
ans=ans+Q.front().first;
}
fout<<ans;
fin.close();
fout.close();
return 0;
}