Cod sursa(job #906459)

Utilizator CostanMiriamCostan Miriam CostanMiriam Data 6 martie 2013 20:47:47
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>
using namespace std;
ofstream fout ("deque.out");
ifstream fin ("deque.in");
int n,k,front,back,i,d[5000010];
long long v[5000010],sum;

int main () {

fin>>n>>k;
for (i=1;i<=n;i++)
fin>>v[i];

front = 1; back = 0;

for (i=1;i<=n;i++) {

while (front<=back && v[i] <= v[d[back]]) back --;

d[++back]= i;

if (i - d[front] == k)
front ++;

if (i>=k)
sum += v[d[front]];
}


fout << sum << "\n";

return 0;
}