测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A211. FBI 树

编程题 普及/提高-
知识点

题目描述

我们可以把由“$0$”和“$1$”组成的字符串分为三类:全“$0$”串称为$B$串,全“$1$”串称为I串,既含“$0$”又含“$1$”的串则称为F串。

$FBI$树是一种二叉树,它的结点类型也包括$F$结点,$B$结点和I结点三种。由一个长度为$2^N$的“$01$”串S可以构造出一棵$FBI$树$T$,递归的构造方法如下:

1. $T$的根结点为$R$,其类型与串$S$的类型相同;
2. 若串$S$的长度大于$1$,将串$S$从中间分开,分为等长的左右子串$S_1$和$S_2$;由左子串$S_1$构造R的左子树$T_1$,由右子串$S_2$构造$R$的右子树$T_2$。

现在给定一个长度为$2^N$的“$01$”串,请用上述构造方法构造出一棵$FBI$树,并输出它的后序遍历序列。

输入格式

第一行是一个整数$N(0 \le N \le 10)$,

第二行是一个长度为$2^N$的“$01$”串。

输出格式

一个字符串,即$FBI$树的后序遍历序列。

输入输出样例

输入 #1
3
10001011
输出 #1
IBFBBBFIBFIIIFF

说明/提示

对于40%的数据,$N \le 2$;

对于全部的数据,$N \le 10$。

noip2004普及组第3题
上一题 去做题 下一题