Pagini recente » Borderou de evaluare (job #1321145) | Cod sursa (job #2004381) | Borderou de evaluare (job #1120395) | Cod sursa (job #2692452) | Cod sursa (job #5472)
Cod sursa(job #5472)
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.