题解 | #DNA序列#
DNA序列
https://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a
import sys string,num = input().rstrip(),int(input().rstrip()) list0 = [] for i in range(2,len(string)+1): for j in range(0,len(string)): try: if i < len(string)+1 and i-j == num: list0.append(string[j:i]) i+=1 except: pass #list1 = sorted(list0,key=lambda x:len(x)) list2=[] for i in list0: if len(i) == num and i.count("C") > 0 and i.count("G") > 0: list2.append([i,(i.count("C")+ i.count("G"))/len(i)]) print(sorted(list2,key=lambda x:x[1],reverse=True)[0][0])
开始理解的是自字符串不包括本身,其实应该包括;
开始理解相同cg不分前后,其实是要分的,从左到右分出的第一个子字符串