Cod sursa(job #323941)
Utilizator | Popa Andreea Maria popa.andreea | Data | 14 iunie 2009 11:06:45 |
---|---|---|---|
Problema | Deque | Scor | 60 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
program deque;
var d,v:array[-1..5000001] of longint;
n,k,i,p,u:longint;
f,g:text;
s:int64;
begin
assign(f,'deque.in');
assign(g,'deque.out');
reset(f);
rewrite(g);
read(f,n,k);
for i:=1 to n do
readln(f,v[i]);
p:=1;
u:=0;
s:=0;
for i:=1 to n do
begin
if i-d[p]=k then inc(p);
while (p<=u) and (v[i]<=v[d[u]]) do dec(u);
inc(u);
d[u]:=i;
if i>=k then s:=s+v[d[p]];
end;
close(f);
writeln(g,s);
close(g);
end.