Pagini recente » Cod sursa (job #1171390) | Cod sursa (job #2558671) | Borderou de evaluare (job #2557021) | Cod sursa (job #1965853) | Cod sursa (job #2732149)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{ifstream fin("deque.in");
ofstream fout("deque.out");
int n,k,i,p=0,u=-1;
long suma=0;
fin>>n>>k;
int v[n],poz[n];
for(i=0;i<n;i++)
{fin>>v[i];
while(p<=u && v[i]<=v[poz[u]])
u--;
u++;
poz[u]=i;
if(poz[p]==poz[u]-k)
p++;
if(poz[u]+1>=k)
suma+=v[poz[p]];
}
fout<<suma;
return 0;
}