roy12 2008-08-03 00:23:00
点我顶贴
收藏
删除
var a:array[1..201]of longint;
i,j,k,ans,n:longint;
c:char;
s:string;
begin
readln(n);
a[n]:=-1;
for i:=1 to n do
begin
s:=’’;
repeat
read(c);
if c<>’ ’ then s:=s+c;
until c=’ ’;
if s=’jmp’ then
begin
readln(j);
a[i]:=j;
end else
begin
readln(s);
if i<n then a[i]:=i+1;
end;
end;
if a[n]>-1 then
begin
writeln(’0’);
exit;
end;
ans:=0;
i:=1;
repeat
inc(ans);
if i=n then break;
i:=a[i];
until (i>n)or(ans>202);
if ans>202 then writeln(’0’) else writeln(ans);
end.
#1 wish@2008-08-03 00:23:00
3202
回复
删除
until(i>n)or(ans>202);
这个 i>n 多余
另外你把 string 改成 ansistring 试下 -_-
你的方法私以为有那么一点点投机取巧~,ans>200 就退。。。
不过应该没问题