Pagini recente » Cod sursa (job #2069187) | Cod sursa (job #14833) | Utilizatori inregistrati la FMI No Stress 4 | Cod sursa (job #2307560) | Cod sursa (job #608521)
Cod sursa(job #608521)
program deq;
var a,deque: array [1..5000000] of longint;
b1:array [1..1 shl 15] of char;
n,k,i,j,p,cap,coada:longint;
s:int64;
fi,fo:text;
begin
assign(fi,'deque.in');
assign(fo,'deque.out');
reset(fi);
rewrite(fo);
readln(fi,n,k);
for i:=1 to n do
readln(fi,a[i]);
cap:=1; coada:=0;
s:=0;
for i:=1 to n do begin
while (cap<=coada)and(a[i]<=a[deque[coada]]) do dec(coada);
inc(coada);
deque[coada]:=i;
if deque[cap]=i-k then inc(cap);
if i>=k then s:=s+a[deque[cap]]
end;
writeln(fo,s);
close(fo);
end.