zhaoyimei 2009-09-27 05:20:00
点我顶贴
收藏
删除
program jisuan;
var root:array[1..5100] of longint;
f:array[1..5100] of 0..1;
x,y,i,j,k,l,m,n:longint;
procedure ranse(f1:longint);
begin
if (f[f1]=0) then begin
f[f1]:=1;
if root[f1]=f1 then exit;
ranse(root[f1]);
end
else begin
writeln(f1);
halt;
end;
end;
begin
read(n);
for x:=1 to n do
root[x]:=x;
for x:=2 to n do
begin
read(i,j);
root[j]:=i;
end;
fillchar(f,sizeof(f),0);
read(i,j);
if i=j then writeln(i)
else begin
f[i]:=1;
f[j]:=1;
ranse(root[i]);
ranse(root[j]);
end;
end.
#1 sesame@2009-09-27 05:15:00
13154
回复
删除
N的范围《=1000000
看一下啦.. .
你才5100 怎么过啊..
不过话说.. 我用你的程序100000 就过了..
好了好了..拿分来吧...!