Đề bài:
Thuật toán:
- Đây là bài thuần sử dụng cấu trúc dữ liệu IT. Các bạn có thể tham khảo thêm tại: http://adf.ly/1f54AI
Code:
uses math;
const fi='';
fo='';
maxn=100000;
oo =2*trunc(1e10);
var a :array[0..maxn] of int64;
i,j,n,p,q,m :longint;
t :array[1..4*maxn] of int64;
res :int64;
procedure enter;
var u,v,k :longint;
begin
readln(n,m);
for i:=1 to m do
begin
read(u,v,k);
a[u] := a[u]+ k;
a[v+1] := a[v+1] -k;
end;
for i:=1 to n do
a[i] := a[i-1] +a[i];
end;
procedure update(k,l,r:longint);
var m :longint;
begin
if l=r then
begin
t[k] := a[l];
exit;
end;
m := (l+r) div 2;
update(k*2,l,m);
update(k*2+1,m+1,r);
t[k] := max(t[k*2],t[k*2+1]);
end;
procedure find(k,l,r,i,j:longint);
var m :longint;
begin
if (i>r) or (j

Speak Your Mind