题解 | #DNA序列#
DNA序列
https://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a
package main
import (
"fmt"
)
func calculateGC(s string) int {
var cnt int
for i:=0; i<len(s); i++ {
if s[i] == 'G' || s[i] == 'C' {
cnt++
}
}
return cnt
}
func findLongestStr(s string, k int) string {
size := len(s)
var maxCountGC int
var longSubStr string
for i:=0; i<=size-k; i++ {
countGC := calculateGC(s[i:i+k])
if countGC > maxCountGC {
longSubStr = s[i:i+k]
maxCountGC = countGC
}
}
return longSubStr
}
func main() {
var s string
var k int
fmt.Scan(&s, &k)
fmt.Println(findLongestStr(s, k))
}
// 本题输入为一个整数和一个字符串,所以采用:fmt.Scan(&s, &k)
查看16道真题和解析
