Uva-1368-DNA Consensus String
来源:互联网 发布:微信网页授权java代码 编辑:程序博客网 时间:2024/04/30 05:57
这个题要求求出一个DNA序列使得其到各序列的距离最小,如果答案有多组找字典序最小的。
依次找到最优解就好。
代码:
#include<cstdio>#include<cstring>#include<iostream>using namespace std;const int maxn=10e4+10;char map[60][maxn];int main(){ int cas; scanf("%d",&cas); while(cas--) {int n,m;scanf("%d%d",&n,&m);for(int i=0;i<n;i++) scanf("%s",map[i]);char str[maxn];int ans=0;for(int i=0;i<m;i++){ int ita=0,itb=0,itc=0,itd=0; for(int j=0;j<n;j++) {switch(map[j][i]){ case 'A': ita++;break; case 'C': itb++;break; case 'G': itc++;break; case 'T': itd++;break;} } if(ita>=itb&&ita>=itc&&ita>=itd) {str[i]='A';ans+=n-ita;} else if(itb>=ita&&itb>=itc&&itb>=itd) {str[i]='C';ans+=n-itb;} else if(itc>=ita&&itc>=itb&&itc>=itd) {str[i]='G';ans+=n-itc;} else {str[i]='T';ans+=n-itd;}}str[m]='\0';printf("%s\n%d\n",str,ans); } return 0;}
- UVA 1368 - DNA Consensus String
- uva 1368 DNA Consensus String
- Uva-1368-DNA Consensus String
- UVa 1368 DNA Consensus String
- UVA 1368 DNA Consensus String
- UVA 1368 DNA Consensus String
- UVa:1368 DNA Consensus String
- uva 1368 - DNA Consensus String
- UVa 1368 - DNA Consensus String
- UVa 1368 - DNA Consensus String
- UVa 1368 DNA Consensus String
- UVa 1368 - DNA Consensus String
- UVA - 1368 DNA Consensus String
- UVa 1368DNA Consensus String
- UVa 1368 - DNA Consensus String
- Uva 1368 DNA Consensus String
- 【Uva 1368】 DNA Consensus String
- UVa-1368 - DNA Consensus String
- 2013年3月27日
- android 手势滑动demo
- eclipse插件安装纠结过程
- POJ3364
- jQuery plugin: Validation 使用说明
- Uva-1368-DNA Consensus String
- UVAOJ--10382 Watering Grass
- 配置libgdx
- 设计模式之建造者模式
- 看图片 读故事:轻松理解数字签名和数字证书
- 使用Cookie记录访问数
- zoj 3204 字典序最小的最小生成树的输出
- mysql 导出csv文件
- 使用Cookie记录用户名和密码