题解 | #表示数字#

表示数字

https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6

package main

import (
    "fmt"
)

func isDigit(ch byte) bool {
    return '0' <= ch && ch <= '9'
}

func transString(s string) string {
    var bs []byte

    right := 0
    for right < len(s) {
        if !isDigit(s[right]) {
            bs = append(bs, s[right])
            right++
            continue
        }

        bs = append(bs, '*')
        for right < len(s) && isDigit(s[right]) {
            bs = append(bs, s[right])
            right++
        }
        bs = append(bs, '*')
    }

    return string(bs)
}

func main() {
    var s string
    fmt.Scan(&s)
    fmt.Println(transString(s))
}
// 本题输入为一个字符串,所以采用:fmt.Scan(&s)

全部评论

相关推荐

牛至超人:哈工大已经很棒了,不需要加括号了,然后咋没有实习经历呢?火速趁寒假整一段实习,导师不让就狠狠肘击
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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