题解 | #DNA序列#

DNA序列

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

# 获取输入1,去掉前后空格
dna = input().strip()
# 获取输入2
length = input().strip()
# 使用 for 循环,遍历输入 1,每次获取输入 2 的长度的字符串,计算 C 和 G 的比例,将比例放入列表一,字串放入列表二
# 只有新的计算结果比列表一中的数字大时,再放入
proportion = []
str_lis = []
for i in range(len(dna)):
    gc = dna[i:i+int(length)]
    g_or_c = 0
    for j in gc:
        if j == 'G' or j == 'C':
            g_or_c += 1
    if not proportion:
        proportion.append(round(g_or_c/len(dna), 3))  # 因为字符串长度 <= 1000,所以保留 3 位小数
        str_lis.append(gc)
    elif round(g_or_c/len(dna), 3) > proportion[-1]:
        proportion.append(round(g_or_c/len(dna), 3))
        str_lis.append(gc)
# 最后输出字串列表中的最后一个值即可
print(str_lis[-1])

全部评论

相关推荐

在校生实习:我觉得平时学校肯定有各种大作业吧。包装一下写项目里。特长那块喧宾夺主了,项目肯定是大头。特长里比如:熟悉vscode,这个感觉不具有吸引性。简要介绍你会什么语言,什么工具等就行了。同26找实习,我是个超级菜鸡😭大家一起加油
点赞 评论 收藏
分享
粗心的雪碧不放弃:纯学历问题,我这几个月也是一直优化自己的简历,后来发现优化到我自己都觉得牛逼的时候,发现面试数量也没有提升,真就纯学历问题
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务