题解 | #DNA序列#

DNA序列

http://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a

while True:
    try:
        a = input()
        n = int(input())
        res = []
        d = {}
        s = []
        #取出所有子序列
        for i in range(len(a)-n+1): #注意i的取值范围,保证不能取到短于n的序列
            res.append(a[i:i+n])
        #计算CG比
        for j in res:
            ng = j.count('G')
            nc = j.count('C')
            d[j] = (ng+nc)/len(j)
        #找到最大CG比的子序列
        maxi = max(d.values())
        for j in res:
            if d[j] == maxi:
                s.append(j)
        #输出最先出现的
        print(s[0])
            
    except:
        break
全部评论

相关推荐

头像
10-09 19:35
门头沟学院 Java
洛必不可达:java的竞争激烈程度是其他任何岗位的10到20倍
点赞 评论 收藏
分享
去B座二楼砸水泥地:不过也可以理解,这种应该没参加过秋招
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务