我是靠谱客的博主 幽默航空,最近开发中收集的这篇文章主要介绍kitty猫的基因编码(栈),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Description

  kitty的基因编码如下定义: kitty的基因由一串长度2^k(k<=8)的01序列构成,为了方便研究,需要把,01序列转换为ABC编码。用T(s)来表示01序列s的ABC编码 T(s)=‘A'(当S全由'0'组成) T(s)=‘B'(当s全由'1'组成) T(s)=‘C'+T(s1)+T(s2) s1,s2为把s等分为2个长度相等的子串 比如 T('00')='A' T('00001111')='CAB' 

Input

一行,长度为2^k,为kitty猫的01基因编码,有多个数据

Output

一行,由ABC构成的ABC编码

Sample Input

 

01001011

 

Sample Output

 

CCCABACCBAB


解题思路:先用字符串读入,然后用递归,按照题目的要求进行转化,最后输出转化的结果即可。

程序:
var
  s:ansistring;

function dg(s:ansistring):ansistring;
  var
    s1,s2:ansistring;
    i,len,max1,max2:longint;
  begin
    if s=' ' then exit;
    len:=length(s);
    max1:=0;
    max2:=0;
    s1:='';
    s2:='';
    for i:=1 to len do
      if s[i]='0' then inc(max1) else inc(max2);
    if max1=len then exit('A');
    if max2=len then exit('B');
    for i:=1 to len div 2 do
      begin
        s1:=s1+s[i];
        s2:=s2+s[i+(len div 2)];
      end;
    dg:='C'+dg(s1)+dg(s2);
end;

begin
  readln(s);
  writeln(dg(s));
end.


版权属于: Chris
原文地址: http://blog.sina.com.cn/s/blog_83ac6af80102v6tg.html
转载时必须以链接形式注明原始出处及本声明。

最后

以上就是幽默航空为你收集整理的kitty猫的基因编码(栈)的全部内容,希望文章能够帮你解决kitty猫的基因编码(栈)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部