【数据结构】点修改段查询

 1 var
 2     a,b:array[0..10000] of integer;
 3     i,n:integer;
 4 procedure edit(l,r,delta:integer);
 5 var
 6     i:integer;
 7 begin
 8     b[l]:=b[l]+delta;
 9     b[r+1]:=b[r+1]-delta;
10 end;
11 
12 function find(k:integer):integer;
13 var
14     i:integer;
15 begin
16     for i:=1 to k do inc(find,b[i]);
17 end;
18 begin
19     readln(n);
20     for i:=1 to n do read(a[i]);
21     for i:=1 to n do b[i]:=a[i]-a[i-1];
22 end.

 

posted @ 2013-08-14 14:03  OmegaIota  阅读(139)  评论(0编辑  收藏  举报