liye14 2010-02-22 17:50:00
点我顶贴
收藏
删除
这是用合并单元做的?为什么只有20分?
var
l,m,i,j,s:longint;
a:array[1..100] of record x,y:longint;end;
begin
readln(l,m);
for i:=1 to m do
readln(a[i].x,a[i].y);
for i:=1 to m do
for j:=1 to m do
if (a[i].x<>-1)and(a[j].x<>-1)and(i<>j) then
begin
if (a[i].x<=a[j].x)and(a[i].y<=a[j].y)and(a[i].y>=a[j].x) then
begin a[i].y:=a[j].y;a[j].x:=-1;end;
if (a[i].x>=a[j].x)and(a[i].y<=a[j].y) then
begin a[i].x:=a[j].x;a[i].y:=a[j].y;a[j].x:=-1;end;
if (a[i].x>=a[j].x)and(a[i].x<=a[j].y)and(a[i].y>=a[j].y) then
begin a[i].x:=a[j].x;a[j].x:=-1;end;
end;
for i:=1 to m do
if a[i].x<>-1 then
s:=s+a[i].y-a[i].x+1;
writeln(l+1-s);
end.