P2562 [AHOI2002]Kitty猫基因编码

题目描述

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

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

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

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

输入输出格式

输入格式:

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

输出格式:

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

输入输出样例

输入样例#1: 复制

00
输出样例#1: 复制

A
输入样例#2: 复制

01001011
输出样例#2: 复制

CCCABACCBAB

dfs

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 100100
using namespace std;
int l,sum;
char ch[N],ans[N],w,q;
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}
void dfs(int a,int b,int e)
{
    if(a>b) return ;
    w=q=ch[a];
    ;i<=b;i++)
     if(ch[i]!=w) {
      q=ch[i];break;
     }
    if(q==w)
    {
        ') ans[++sum]='A';
        else ans[++sum]='B';
        &&e<=l&&b+<=e) dfs(b+,e,e<<);
        &&e<=l) dfs(b+,e,e*-l/);
    }
    else
    {
        ans[++sum]='C';
        ,b);
    }
}
int main()
{
    cin>>ch+;l=strlen(ch+);
    dfs(,l,l);
    ;i<=sum;i++)
     printf("%c",ans[i]);
    ;
}

40分代码、、

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 100100
using namespace std;
int l,sum;
char ch[N],ans[N],w,q;
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}
void dfs(int a,int b,int e)
{
    if(a>b) return ;
    w=q=ch[a];
    ;i<=b;i++)
     if(ch[i]!=w) {
      q=ch[i];break;
     }
    if(q==w)
    {
        ') ans[++sum]='A';
        else ans[++sum]='B';
    }
    else
    {
        ans[++sum]='C';
        ;
        dfs(a,mid,mid-a+);
        dfs(mid+,b,b-mid);
    }
}
int main()
{
    cin>>ch+;l=strlen(ch+);
    dfs(,l,l);
    ;i<=sum;i++)
     printf("%c",ans[i]);
    ;
}

洛谷—— P2562 [AHOI2002]Kitty猫基因编码的更多相关文章

  1. 洛谷 P2562 [AHOI2002]Kitty猫基因编码

    P2562 [AHOI2002]Kitty猫基因编码 题目描述 小可可选修了基础生物基因学.教授告诉大家 Super Samuel 星球上 Kitty猫的基因的长度都是 2 的正整数次幂 ), 全是由 ...

  2. Kitty猫基因编码

    原题链接:https://www.luogu.org/problemnew/show/2562#sub 简单的递归题.记录一下前缀和然后二分求解就好. 参考代码: #include <iostr ...

  3. 洛谷——P2556 [AHOI2002]黑白图像压缩

    P2556 [AHOI2002]黑白图像压缩 题目描述 选修基础生物基因学的时候, 小可可在家里做了一次图像学试验. 她知道:整个图像其实就是若干个图像点(称作像素)的序列,假定序列中像素的个数总是 ...

  4. 洛谷——P2559 [AHOI2002]哈利·波特与魔法石

    P2559 [AHOI2002]哈利·波特与魔法石 题目描述 输入输出格式 输入格式: 文件中第一行有七个数,分别是 S1. S2 . …. S7 :第二行有两个数,依次分别是起点城市 i 和终点城市 ...

  5. 洛谷P2556 [AHOI2002] 黑白图像压缩 [模拟]

    题目传送门 黑白图像压缩 题目描述 选修基础生物基因学的时候, 小可可在家里做了一次图像学试验. 她知道:整个图像其实就是若干个图像点(称作像素)的序列,假定序列中像素的个数总是 8 的倍数, 于是每 ...

  6. 洛谷 P2559 [AHOI2002]哈利·波特与魔法石

    P2559 [AHOI2002]哈利·波特与魔法石 题目描述 输入输出格式 输入格式: 文件中第一行有七个数,分别是 S1. S2 . …. S7 :第二行有两个数,依次分别是起点城市 i 和终点城市 ...

  7. 洛谷 P2558 [AHOI2002]网络传输

    P2558 [AHOI2002]网络传输 题目描述 在计算机网络中所有数据都是以二进制形式来传输的. 但是在进行较大数据的传输时,直接使用该数的二进制形式加以传输则往往传输的位数过多. 譬如要传输 1 ...

  8. 洛谷【P1140】相似基因

    浅谈\(DP\):https://www.cnblogs.com/AKMer/p/10437525.html 题目传送门:https://www.luogu.org/problemnew/show/P ...

  9. 洛谷P1140 相似基因 (DP)

    洛谷P1140 相似基因 题目背景 大家都知道,基因可以看作一个碱基对序列.它包含了44种核苷酸,简记作A,C,G,TA,C,G,T.生物学家正致力于寻找人类基因的功能,以利用于诊断疾病和发明药物. ...

随机推荐

  1. [洛谷P3628] [APIO2010]特别行动队

    洛谷题目链接:[APIO2010]特别行动队 题目描述 你有一支由 n 名预备役士兵组成的部队,士兵从 1 到 \(n\) 编号,要将他们拆分 成若干特别行动队调入战场.出于默契的考虑,同一支特别行动 ...

  2. c# 自定义排序Compare

    .net FrameWork 框架博大精深,用着忘着,计划对自己能够想到知识点梳理一下,此篇是对自定义排序的理解: class Program { static void Main(string[] ...

  3. Sass 颜色函数

    /* * Sass 颜色函数 * RGB 颜色函数 * 1. rgb($red,$green,$blue):根据红.绿.蓝三个值创建一个颜色: * rgb(200,40,88) //根据r:200,g ...

  4. java map 转 json 自编封装

    1.自编封装代码: import com.alibaba.fastjson.JSON; import java.util.*; public class jsonConversion { privat ...

  5. hdu 1213 How Many Tables(并查集算法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1213 How Many Tables Time Limit: 2000/1000 MS (Java/O ...

  6. hdu 1016 Prime Ring Problem (素数环)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016 题目大意:输入一个n,环从一开始到n,相邻两个数相加为素数. #include <iost ...

  7. MSF爆破MSSQL

    show options: msf auxiliary(scanner/mssql/mssql_login) > show options Module options (auxiliary/s ...

  8. php中的parse_ini_file函数

    作用:parse_ini_file() 函数解析一个配置文件,并以数组的形式返回其中的设置 格式:parse_ini_file(file,true)// (第二个参数为可选参数.如果设置为 true, ...

  9. gcc中的内嵌汇编语言(Intel i386平台)

    [转]http://bbs.chinaunix.net/thread-2149855-1-1.html 一.声明  虽然Linux的核心代码大部分是用C语言编写的,但是不可避免的其中还是有一部分是用汇 ...

  10. binlog_server备份binlogs

    在主库上建一个复制用的账号: root@localhost [(none)]>grant replication slave on *.* to 'wyz'@'%' identified by ...