题解 | #DNA序列#

DNA序列

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

while True:
    try:
        seq = input() #接收 DNA 序列(sequence)
        n = int(input())
        subs = ''
        for i in range(len(seq) - n + 1):
            subs = subs + seq[i:i+n] + ' ' #字符串形式存放 seq 中所有长度为 n 的连续子序列,用‘ ’分隔
        lsub = subs.split() #获得长度为 n 的连续子序列列表
        dic = {}
        for s in lsub:
            dic[s] = s.count('C') + s.count('G') #子序列长度固定为 n,子序列中的 C 和 G 总数越多,CG-ratio 就越高
        lso = sorted(dic.items(), key=lambda x:x[1], reverse=True)
        print(lso[0][0])
    except:
        break

全部评论

相关推荐

牛客410815733号:这是什么电影查看图片
点赞 评论 收藏
分享
11-08 13:58
门头沟学院 Java
程序员小白条:竟然是蓝桥杯人才doge,还要花钱申领的offer,这么好的公司哪里去找
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务