题解 | #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])