Cod sursa(job #794522)
Utilizator | t.g.g.t t.g.g.t | Data | 6 octombrie 2012 14:38:56 |
---|---|---|---|
Problema | Divk | Scor | 30 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
var c:array[0..500000]of longint; v:array[0..500000]of longint;
b1:array[1..1 shl 17]of char;
i,n,k,a,b,t,s,s2:longint;
begin
assign(input,'divk.in'); reset(input); settextbuf(input,b1);
readln(n,k,a,b); s:=0; s2:=0;
for i:=1 to n do
begin
readln(t);
s:=s+t;
c[i]:=s mod k;
if i>=a then
begin
if (i-b-1>=0) then dec(v[c[i-b-1]]);
inc(v[c[i-a]]);
s2:=s2+v[c[i]]
end;
end;
assign(output,'divk.out'); rewrite(output); writeln(s2); close(output);
end.