讨论 / Pascal示例代码
imoimc 2016-07-26 00:11:28
点我顶贴 收藏 删除
program fbi;

var p,i,j,n,m:longint;

z,w,s,ss,e,q:ansistring;

begin

readln(n);

if n=0 then begin writeln('B');close(input);close(output);halt;end;

readln(z);

m:=length(z);

for i:=1 to m do

case z[i] of

'1':s:=s+'I';

'0':s:=s+'B';

end;

w:=s;

m:=m div 2;

p:=2;

repeat

e:='';ss:='';

for i:=1 to m do

begin

q:=copy(w,i*2-1,2);

if q='BB' then e:=e+'B'

else if q='II' then e:=e+'I'

else e:=e+'F';

end;

for i:=1 to m do

ss:=ss+copy(s,(i-1)*p+1,p)+copy(e,i,1);

p:=(p+1)*2;

w:=e;

s:=ss;

m:=m div 2;

until m=0;

writeln(s);

end.

查看更多回复
提交回复