题解 | 把数字翻译成字符串

把数字翻译成字符串

https://www.nowcoder.com/practice/046a55e6cd274cffb88fc32dba695668

package main

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 解码
 * @param nums string字符串 数字串
 * @return int整型
*/
func solve( nums string ) int {
    // write code here
    n := len(nums)
    dp := make([]int, n)

    if nums[0] == '0'{
        dp[0] = 0
    } else{
        dp[0] = 1
    }

    if n == 1{
        return dp[0]
    }

    if nums[1] != '0'{
        dp[1] += dp[0]
    }

    if nums[0] == '1' || nums[0] == '2' && nums[1] < '7'{
        dp[1] += 1
    }

    for i:=2; i<n; i++{
        if nums[i] != '0'{
            dp[i] += dp[i-1]
        }
        if nums[i-1] == '1' || nums[i-1] == '2' && nums[i] < '7'{
            dp[i] += dp[i-2]
        }
    }

    return dp[n-1]
}

全部评论

相关推荐

玉无心❤️:发照片干啥 发简历啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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