33OJ
登录 注册

#P2562. [AHOI2002] Kitty 猫基因编码

    ID: 3372 远端评测题 1000ms 125MiB 尝试: 0 已通过: 0 显示难度普及− 上传者: 标签>字符串2002各省省选递归安徽

[AHOI2002] Kitty 猫基因编码

题目描述

小可可选修了基础生物基因学。教授告诉大家 Super Samuel 星球上 Kitty 猫的基因的长度都是 22 的正整数次幂,全是由两种不同的基因单元组成的。这两种不同的基因单元分别记成 00 和 11,于是 Kitty 猫基因可以写成一个 01 串表达式。

为了便于分析和降低数据存储量,教授发明了 ABC 编码规则。该编码规则是不断地按照

$$T(s) = \begin{cases} \texttt A & \text{若 }s\text{ 串全是 }0 \\ \texttt B & \text{若 }s\text{ 串全是 }1 \\ \texttt C T(s_1) T(s_2) & \text{否则把 }s\text{ 串分成两个等长的子串 }s_1\text{ 和 }s_2 \end{cases}$$

对 Kitty 猫基因 01 串表达式 ss 进行改写,直至最终被改写成只含有字符 A\texttt A、B\texttt B、C\texttt C 的符号串。

例如:

$$\begin{align*} &T(01001011) \\ &= \texttt C T(0100)T(1011) \\ &= \texttt{CC}T(01)T(00)\texttt C T(10)T(11) \\ &= \texttt{CCC}T(0)T(1)\texttt{ACC}T(1)T(0)\texttt B \\ &= \texttt{CCCABACCBAB} \end{align*}$$

请你编写程序帮助小可可求出 Kitty 猫基因的 ABC 编码以协助教授开展科研工作。

输入格式

文件中以一行的形式存放了一个 Kitty 猫基因的 01 串表达式。

输出格式

以一行的形式输出这个 Kitty 猫基因的 ABC 编码。

00
A
01001011
CCCABACCBAB

提示

给出的 01 字符串长度 Len≤256\text{Len}\leq 256。