A1051. DNA序列

问题描述

人类基因组计划的第一阶段于2000年6月26日胜利结束,我国的科研工作者圆满地完成了其中的1%的测序工作。
  众所周知,对于任意两个人来说,他们的染色体上的DNA序列大部分是相同的(否则就不是同一物种了),但是总会有少数碱基对不相同(否则世界上的人长得都一模一样了)。碱基的不同是由于基因的变异引起的。例如在某个人的DNA序列中,一位点上A突变成G。但每个人的DNA序列的变异位置都是不尽相同的。这样,对于大部分位点来说,很有可能是这么一种情况:大部分人在这个位点上的碱基是一致的(因为没有发生变异),少数人具有不同的碱基(因为发生了变异)。
  这样就给我们一个启发:在测序的过程中,如果仅仅使用一个人的样本的话,在很多位点上测出的结果就不具有代表性;如果能够测出多个人的序列,那么就有可能“整合”出一段具有人类共性的序列出来,这样更有利于研究。
  比如说,我们要测人的某一段的DNA序列,得到了4个人的样本:
  AAAGGCCT
  AGAGCTCT
  AAGGATCT
  AAACTTCT

  按照如下:
  1、 取出在每一个位置上出现次数最多的碱基作为整合后该位置上的碱基
  2、 如果有一个位置上出现次数最多的碱基不止一种,那么在出现次数最多的碱基中,优先选择A,其次C,再次G,最后T。
  按照上边的规则,整合后的序列为:
  AAAGATCT
输入格式
输入数据的第一行是一个数字N(2<=N<=10),代表DNA序列的个数
  接下来有N行,每行都是一个由AGCT组成的字符串,代表每个DNA序列,保证这些序列拥有相同的长度
  序列的长度在2到100之间
输出格式
仅输出一个字符串,代表整合后的DNA序列
样例输入
4
AAAGGCCT
AGAGCTCT
AAGGATCT
AAACTTCT
样例输出
AAAGATCT
package www.tsinsen.com;import java.util.Scanner;public class A1051 {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubScanner scan=new Scanner(System.in);int n=scan.nextInt();String[] strs=new String[n];for(int i=0;i<n;i++){strs[i]=scan.next();}int[][] nums=new int[strs[0].length()][4];for(int i=0;i<n;i++){for(int j=0;j<strs[0].length();j++){char c=strs[i].charAt(j);switch(c){case 'A':nums[j][0]++;break;case 'C':nums[j][1]++;break;case 'G':nums[j][2]++;break;case 'T':nums[j][3]++;break;}}}StringBuffer sb=new StringBuffer();for(int i=0;i<strs[0].length();i++){int max=nums[i][0];int max_index=0;for(int j=1;j<4;j++){if(nums[i][j]>max){max=nums[i][j];max_index=j;}}switch (max_index){case 0:sb.append("A");break;case 1:sb.append("C");break;case 2:sb.append("G");break;case 3:sb.append("T");break;default:break;}}System.out.println(sb.toString());}}

 

转载于:https://www.cnblogs.com/henuLiGang/p/8485728.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/486766.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dm_php库,dmandwp系统 PHP建站系统+wordpress建站和DM系统区块+安装教程

dmandwp 系统(又名 wordpress 建站和 DM 系统区块)是一款使用 DM 系统的区块功能&#xff0c;让 wordpress 建站更方便的 PHP 建站系统。DM 系统的优势就是区块功能。现在把 DM 的区块功能做为插件&#xff0c;用在 wordpress 系统上。分类和内容&#xff0c;菜单&#xff0c;路…

美国对六种新兴技术实施控制:EUV和5nm相关技术在列

来源&#xff1a;翻译自Global trade and sanctions law。2020年10月5日&#xff0c;美国商务部工业与安全局&#xff08;BIS&#xff09;发布了最终规则&#xff0c;对《关于常规武器和两用货物及技术出口管制的瓦森纳安排》2019年12月全体会议上达成的六项“新兴技术”实施新…

spoon无法初始化至少一个步骤_手机怎么设置无线路由器 手机设置无线路由器步骤【详解】...

随着智能手机、平板电脑等无线设备的流行&#xff0c;无线网络也已经逐渐普及。而无线路由器作为无线网络的载体&#xff0c;自然成为必不可少的设备。小编原以为无线路由器只能通过连接电脑才能进行设置&#xff0c;但事实上如今很多路由器都可以通过手机完成设置&#xff0c;…

centos安装php服务器,在CentOS上安装搭建PHP+Apache+Mysql的服务器环境方法

以下安装过程是基于centos下&#xff0c;使用yum安装搭建PHPApacheMysql的服务器环境一&#xff1a;安装MySQL1.安装yum install mysql mysql-server mysql-devel2.启动MySQL /etc/init.d/mysqld start3.设置MySQL初始密码(Mysql安装完成后默认为无密码&#xff0c;未设置密码之…

任正非最新讲话:华为专家队伍怎么建?

版权声明来源&#xff1a;心声社区&#xff0c;书享界作者&#xff1a;任正非书享界导语10月10日&#xff0c;任正非签发华为总裁办电子邮件&#xff0c;向华为全员公布今年7月15日、20日、21日任正非在专委会建设思路汇报、研发专家代表及专委会代表座谈会上的讲话。在这篇讲话…

Fast Paxos

自从Lamport在1998年发表Paxos算法后&#xff0c;对Paxos的各种改进工作就从未停止&#xff0c;其中动作最大的莫过于2005年发表的Fast Paxos。无论何种改进&#xff0c;其重点依然是在消息延迟与性能、吞吐量之间作出各种权衡。为了容易地从概念上区分二者&#xff0c;称前者C…

怎么把php的时区配置为本地,PHP本地时区设置

php.ini中&#xff1a;[Date]; Defines the default timezone used by the date functions;date.timezone php5中php.ini默认是GMT时间&#xff0c;北京是8时区,不建议在php.ini中修改时区设置可通过php脚本来设置&#xff0c;若您有自己完全管理权的服务器当然也可以在php.ini…

axios 注册拦截器 cdn引用_PicGo+jsDelivr+GitHub搭建免费cdn加速的图床

PicGojsDelivrGitHub搭建免费cdn加速图床。下面是我写的教程。https://www.sakura521.cn/2020/03/13/picgocdn.html​www.sakura521.cn前言开始使用GitHub&#xff0b;jsDelivr搭建的cdn加速的免费图床&#xff0c;但是发现每次上传图片&#xff0c;然后创建新的版本太麻烦了。…

案例167:基于微信小程序的校园失物招领小程序

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

百度自动驾驶出租车服务在北京全面开放 可免费试乘

来源&#xff1a;手机中国【CNMO新闻】10月11日晚&#xff0c;百度官方正式宣布&#xff0c;即日起&#xff0c;百度自动驾驶出租车服务在北京全面开放&#xff0c;北京的朋友们可在北京经济技术开发区、海淀区、顺义区的数十个自动驾驶出租车站点&#xff0c;无需预约&#xf…

php with语法,Yii框架关联查询with用法分析

本文实例分析了Yii框架关联查询with用法。分享给大家供大家参考。具体方法如下&#xff1a;Yii框架关联查询与mysql中的关联查询会有什么区别呢?这里小编就与各位来一起来看看吧。Yii的关联查询确实是一个方便的东西&#xff0c;网上的资料也很多&#xff0c;但是大部分都是Ct…

itools苹果录屏大师_iTools Pro 1.8.0.4 简单易用的苹果设备 iPhone/iPad 管理工具

iTools Pro是一款Mac上非常好用的iOS设备管理工具&#xff0c;具有应用、照片、音乐、电影、铃声、图书、通讯录、文件管理、实时桌面等基础功能。iTools Pro Mac还有音乐、电影、铃声格式转换、录屏大师、铃声制作、备份还原等功能&#xff0c;支持最新的 iOS和 OS X 系统。iT…

继承和多态二:虚析构函数

虽然我们已经知道了什么是继承和多态&#xff0c;也明白了多态依赖于继承&#xff0c;但是在多态中存在哪些问题呢&#xff1f; 多态中可能存在的内存泄露问题 例如下面的程序中&#xff0c;在圆形Circle的类中定义一个圆心的坐标&#xff0c;并且坐标是在堆中申请的内存&#…

李开复对话彭特兰:AI 不是单打独斗,应避免 AI 冷战!

来源&#xff1a;CSDN近日&#xff0c;创新工场董事长兼CEO李开复博士与阿莱克斯彭特兰教授&#xff08;Alex Pentland&#xff09;展开了一场”AI如何重塑人类社会”的精彩对话。《连线》杂志的资深撰稿人威尔奈特&#xff08;Will Knight&#xff09;主持了这场对话。阿莱克斯…

iphone最新款手机_iPhone 丢了99.9%能找回?这种做法不可信!!

目前&#xff0c;手机已经成为我们生活中必不可少的一部分&#xff0c;科技发展带来消费场景的变化&#xff0c;到处都能扫一扫&#xff0c;让手机显得更加重要&#xff0c;你可以不带钱包出门&#xff0c;但不能不带手机。丢钱包的概率变低&#xff0c;丢手机的概率变高了&…

sql获取日期相差天数oracle,找到oracle sql中两个日期之间的经过时间

当您减去两个DATE值(如enddate – startdate)时,您会得到带小数精度的天数差异,因此例如1.5表示1 1/2天或36小时.您可以使用大量数学将其转换为HH&#xff1a;MI&#xff1a;SS,但更简单的方法是使用NUMTODSINTERVAL函数将十进制值转换为INTERVAL DAY TO SECOND值&#xff1a;N…

唐杰:AI 未来靠迭代

来源 | 北京智源人工智能研究院未来十年人工智能将如何发展&#xff1f;清华大学教授、智源研究院副院长唐杰认为&#xff1a;认知智能将成为一个重要的且可能实现的方向。具体来说&#xff0c;便是 System 1 和 System 2 的循环往复&#xff0c;不断迭代&#xff0c;从而打造出…

影视感悟

《一条狗的使命》 首先要开心只要有可能&#xff0c;就竭尽全力去帮助别人舔你爱的人对过去的事不要一副苦瓜脸对未来也不要愁眉苦脸只要活在当下活在当下收住挑衅脾气烈火&#xff0c;不轻易做过激行为&#xff0c;不轻易先动手打人 转载于:https://www.cnblogs.com/linkenpar…

php中用户验证的方式,在php中进行用户身份验证的最佳方式是什么?

使用Sessions.将会话ID存储在cookie中,并将用户的状态存储在服务器端(loggedIn,userId,IP).澄清您需要存储在会话数组中&#xff1a;> loggedIn&#xff1a;一个关于用户是否登录的布尔变量.您可以为多个会话重复使用相同的Cookie,因此您可以在下次访问您的网站时记住用户的…

linux服务器配置与管理_服务器维护实施步骤

为了有效地维护服务器&#xff0c;服务器管理员必须执行主动的硬件和软件检查。而服务器的维护清单必须包括除尘、日志查看、软件补丁程序测试等。即使具有服务器的性能和冗余功能&#xff0c;增加的工作负载整合和可靠性期望也会对服务器硬件造成损害。服务器维护清单应涵盖物…