Cod sursa(job #936836)

Utilizator OpportunityVlad Negura Opportunity Data 8 aprilie 2013 21:43:20
Problema Deque Scor 25
Compilator fpc Status done
Runda Arhiva educationala Marime 0.49 kb
var fi,fo:text;
    a,dq:array[0..5000000]of longint;
    f,b,rs,n,k,i:longint;


BEGIN
 assign(fi,'deque.in'); reset(fi);
 assign(fo,'deque.out'); rewrite(fo);

  readln(fi,n,k);
  for i:=1 to n do readln(fi,a[i]);

  f:=1; { <- }
  b:=0; { -> }

  for i:=1 to n do
   begin
    while ((f<=b)and(a[i]<=a[dq[b]])) do dec(b);
    inc(b); dq[b]:=i;
    if (dq[f]=i-k) then inc(f);
    if (i-k>=0) then inc(rs,a[dq[f]]);
   end;

  writeln(fo,rs);

 close(fi); close(fo);
END.