Pagini recente » Cod sursa (job #3218354) | Cod sursa (job #1184594) | Cod sursa (job #290478) | Cod sursa (job #1545338) | Cod sursa (job #3161151)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("deque.in");
ofstream cout("deque.out");
int v[5000005],v2[5000005];
int main()
{
int st=0,dr=-1,n,k;
cin>>n>>k;
for(int i=0; i<n; i++)
cin>>v[i];
for(int i=0; i<k-1; i++)
{
while(dr>=st && v[i]<=v[v2[dr]])
dr--;
v2[++dr]=i;
}
long long int s=0;
for(int i=k-1; i<n; i++)
{
while(dr>=st && v[i]<=v[v2[dr]])
dr--;
v2[++dr]=i;
s+=v[v2[st]];
if(i-k+1==v2[st])
st++;//cout<<s<<'\n';
}
cout<<s;
return 0;
}