Cod sursa(job #5472)
Utilizator | Data | 12 ianuarie 2007 16:47:33 | |
---|---|---|---|
Problema | Datorii | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 1.4 kb |
program datorii;
var v:array[1..100001] of longint;
s:array[1..100001]of longint;
v1:array[0..15001] of longint;
f,g:text;
n,m,k:longint;
procedure iofile;
var i:longint;
x,y,z,sum,j:longint;
begin
assign(f,'datorii.in');
reset(f);
assign(g,'datorii.out');
rewrite(g);
readln(f,n,m);
fillchar(v1,sizeof(v1),0);
for i:=1 to n do
begin
read(f,v1[i]);
v1[i]:=v1[i]+v1[i-1];
end;
for j:=1 to m do
begin
readln(f,x,y,z);
if x=0 then
begin
inc(k);
v[k]:=z;
s[k]:=y;
end else
begin
sum:=0;
for i:=1 to k do
if (s[i]>=y)and(s[i]<=z) then
sum:=sum+v[i];
writeln(g,v1[z]-v1[y-1]-sum);
end;
end;
close(g);
close(f);
end;
begin
iofile;
end.