题解 | #DNA序列#

DNA序列

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

while True:
    try:
        
        dna = list(input()) #dna序列
        int_len = int(input()) #子串长度
        int_dna = []
        for i in range(len(dna) - int_len + 1): 提取子串
            int_dna.append(dna[i:i + int_len])
        for i in range(len(int_dna)): 
            count = 0 #判断字串里面由多少个CG
            for j in range(int_len):
                if(int_dna[i][j] == 'C'):
                    count += 1
                if(int_dna[i][j] == 'G'):
                    count += 1
            int_dna[i].append(count/int_len) #将gc-radio的值加入
        int_dna.sort(key = lambda ele:ele[-1],reverse = True)#按照gc-radio的值进行由大到小的排序
        print(''.join(int_dna[0][:-1])) #第一个极为所要的子串
    except:
        break
华为机试题解(prod.by kedao) 文章被收录于专栏

华为实习机试题解

全部评论

相关推荐

11-25 22:06
已编辑
华为 2012基座大模型(预研) 15A 硕士985
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-04 05:12
kalistar:简历留六个字,北京大学(本科),黑体加粗,看看哪个hr不长眼敢碰瓷我们北大✌
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务