Cod sursa(job #3003785)

Utilizator BadHero112Ursu Vasile BadHero112 Data 15 martie 2023 22:15:15
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <bits/stdc++.h>
using ll=long long;
#define S second
#define F first
#define endl '\n'
#define spid ios_base::sync_with_stdio(false);cin.tie(NULL);
const int mod=1e9+7;
const double pi=3.14159265359;
const int maxn=200001;
using namespace std;

ll n,k,sum;

deque<pair<ll,ll>> DQ;

int main(){
	ifstream cin("deque.in");
	ofstream cout("deque.out");
	cin>>n>>k;
	ll x;
	for(int i=1;i<=k;i++){
		cin>>x;
		while(DQ.size()&&x<=DQ.back().F)DQ.pop_back();
		DQ.push_back({x,i});
	}
	ll sum=DQ.front().F;
	for(int i=k+1;i<=n;i++){
		if(i-k>=DQ.front().S)DQ.pop_front();
		cin>>x;
		while(DQ.size()&&x<=DQ.back().F)DQ.pop_back();
		DQ.push_back({x,i});
		sum+=DQ.front().F;
	}
	cout<<sum<<endl;
}