Pagini recente » Cod sursa (job #1779439) | Cod sursa (job #3230674) | Cod sursa (job #1082611) | Cod sursa (job #514486) | 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;
}