1033: 【中学正式题3】基因编码
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:1
Solved:21
Description
小明选修了基础生物学,课上教授告诉大家有一种猫的基因的长度都是2的正整数次幂2^K(K≤8),而且仅由两种不同的基因单元组成。 这两种不同的基因单元分别记成 0 和 1,于是这种猫的基因可以写成一个 01 串表达式 。
为了便于分析和降低数据存储量,教授发明了ABC编码规则。该编码规则是不断地按照基因01串表达式进行改写,直至最终被改写成只含有字符"A","B","C"的符号串. 编码规则如下:
用T(s)来表示01序列s的ABC编码:
当s全由'0'组成时,T(s)='A'
当s全由'1'组成时,T(s)='B'
否则就把s分成2个长度相等的子串s1和s2,T(s)='C'+T(s1)+T(s2)
例如:
T("00") ='A'
T("00001111")
=C+T("0000")+T("1111")
="CAB"
T("01001011")
=C+T("0100")+T("1011")
=C+C+T("01")+T("00")+C+T("10")+T("11")
=C+C+C+("0")+T("1")+A+C+C+T("1")+T("0")+B
=CCCABACCBAB
为了便于分析和降低数据存储量,教授发明了ABC编码规则。该编码规则是不断地按照基因01串表达式进行改写,直至最终被改写成只含有字符"A","B","C"的符号串. 编码规则如下:
用T(s)来表示01序列s的ABC编码:
当s全由'0'组成时,T(s)='A'
当s全由'1'组成时,T(s)='B'
否则就把s分成2个长度相等的子串s1和s2,T(s)='C'+T(s1)+T(s2)
例如:
T("00") ='A'
T("00001111")
=C+T("0000")+T("1111")
="CAB"
T("01001011")
=C+T("0100")+T("1011")
=C+C+T("01")+T("00")+C+T("10")+T("11")
=C+C+C+("0")+T("1")+A+C+C+T("1")+T("0")+B
=CCCABACCBAB
Input
1行,
1个字符串,表示猫基因原始的01编码(长度 <= 2^8)。
```
01110001
```
1个字符串,表示猫基因原始的01编码(长度 <= 2^8)。
```
01110001
```
Output
1行,1个字符串,表示猫基因改写后的ABC编码。
```
CCCABBCACAB
```
```
CCCABBCACAB
```
Sample Input Copy
Sample Output Copy