题解 | #DNA序列#
DNA序列
https://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a
双指针
package main import "fmt" func main() { var str string var length int fmt.Scan(&str, &length) var maxStart = 0 var maxNums = -1 var h, s int var nums = 0 for h < len(str)-length+1 { if str[s] == 'C' || str[s] == 'G' { nums++ } if s-h+1 == length { if nums > maxNums { maxNums = nums maxStart = h } if str[h] == 'C' || str[h] == 'G' { nums-- } h++ } s++ } fmt.Println(str[maxStart : maxStart+length]) }