var aa:array[1..1000,1..3]of integer;
a:array[1..100000]of integer;
i,k,n:integer;
procedure ss1(x,y,z:integer);
var ii,j,kl:integer;
b:array[1..100000]of integer;
begin
fillchar(b,sizeof(b),0);
j:=x; kl:=y-x+1+z; ;
for ii:=x to y do begin b[ii]:=a[ii]; a[ii]:=0; end;
repeat
y:=y+1;
a[x]:=a[y];
a[y]:=0;
x:=x+1;
until y=kl;
for ii:=1 to n do
if a[ii]=0 then begin a[ii]:=b[j]; j:=j+1; end;
end;
状态: Unaccepted
测评机: Xeond[6]
得分: 30分
提交日期: 2010-7-24 7:47:00
有效耗时: 563毫秒
测试结果1: 选手程序无输出
测试结果2: 通过本测试点|有效耗时157ms
测试结果3: 通过本测试点|有效耗时156ms
测试结果4: 输出过少|用户输出数据少于标准输出的50%[标准输出56位|选手输出11位]
测试结果5: 通过本测试点|有效耗时250ms
测试结果6: 运行错误|普通保护错误
测试结果7: 运行错误|普通保护错误
测试结果8: 运行错误|普通保护错误
测试结果9: 运行错误|普通保护错误
测试结果10: 运行错误|普通保护错误
procedure ss2(x,y,z:integer);
var ii,j:integer;
b:array[1..100000]of integer;
begin
fillchar(b,sizeof(b),0);
j:=x;
for ii:=x to y do begin b[ii]:=a[ii]; a[ii]:=0; end;
repeat
x:=x-1;
a[y]:=a[x];
a[x]:=0;
y:=y-1;
until x=z+1;
for ii:=1 to n do
if a[ii]=0 then begin a[ii]:=b[j]; j:=j+1; end;
end;
begin
readln(n,k);
for i:=1 to k do readln(aa[i,1],aa[i,2],aa[i,3]);
for i:=1 to n do a[i]:=i;
for i:=1 to k do if aa[i,1]>aa[i,3]then ss2(aa[i,1],aa[i,2],aa[i,3])
else ss1(aa[i,1],aa[i,2],aa[i,3]);
for i:=1 to 10 do writeln(a[i]);
readln;
end.