讨论 / 看一看哪错了
yyjn 2010-07-14 02:11:00
点我顶贴 收藏 删除
var

f:array[1..3000] of char;

a:array[0..10,1..2] of longint;

n,i,j:longint;

st:string;

procedure njc;

var i,j:integer;

begin

a[0,1]:=1;

a[0,2]:=1;

for i:=1 to 10 do

begin

a[i,1]:=a[i-1,2]+1;

a[i,2]:=1;

for j:=1 to i+1 do

a[i,2]:=a[i,2]*2;

a[i,2]:=a[i,2]-1;

end;

end;

procedure print(i:longint);

begin

if f[i*2]<>' ' then print(i*2);

if f[i*2+1]<>' ' then print(i*2+1);

write(f[i]);

end;

begin

readln(n);

njc;

readln(st);

for i:=1 to a[n+1,2] do

f[i]:=' ';

for i:=1 to length(st) do

if st[i]='1' then f[a[n,1]+i-1]:='I' else f[a[n,1]+i-1]:='B';

for i:=n-1 downto 0 do

for j:=a[i,1] to a[i,2] do

if f[j*2]=f[j*2+1] then f[j]:=f[j*2] else f[j]:='F';

print(1);

writeln;

end.

查看更多回复
提交回复