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

全部评论

相关推荐

投递腾讯等公司10个岗位
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-21 13:38
8月实习会变多吗现在还没找到实习该怎么办...回复的hr好少
码农索隆:3-4月就要开始找,基本上6月份就发offer,7月初已经开始暑期实习了。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务