• leetcode 91 解码方法


    自己终于写出来了,孩子再丑也是自己的,把代码贴着,明天学习一下优秀代码

     1 class Solution {
     2 public:
     3     int numDecodings(string s) {
     4         int dp[s.size()+1];
     5         
     6         dp[0]=1;dp[1]=1;
     7         if(s=="") return 0;
     8         if(s[0]=='0') return 0;
     9         if(s.size()>=2&& s[1]=='0'&&s[0]>'2') return 0;
    10         for(int i=2;i<=s.size();i++){
    11             if(s[i-1]=='0'&&(s[i-2]>'2'||s[i-2]=='0')) return 0;
    12             if(s[i-1]=='0'){
    13                 dp[i]=dp[i-2];
    14             }else{
    15                 if(s[i-2]>'2'||(s[i-2]=='2'&&s[i-1]>'6')){
    16                     dp[i]=dp[i-1];
    17                 }else{
    18                     dp[i]=dp[i-1]+dp[i-2];
    19                     if(i>=3&&s[i-2]=='0'){
    20                         dp[i]=dp[i-1];
    21                     }
    22                 }
    23             }
    24  
    25         }
    26         return dp[s.size()];
    27     }
    28 };

     C++动态规划:

    class Solution {
    public:
        int numDecodings(string s) {
            int dp[s.size()+1];
            
            dp[0]=1;dp[1]=1;
            if(s=="") return 0;
            if(s[0]=='0') return 0;
            if(s.size()>=2&& s[1]=='0'&&s[0]>'2') return 0;
            for(int i=2;i<=s.size();i++){
                if(s[i-1]=='0'&&(s[i-2]>'2'||s[i-2]=='0')) return 0;
                if(s[i-1]=='0'){
                    dp[i]=dp[i-2];
                }else{
                    if(s[i-2]>'2'||(s[i-2]=='2'&&s[i-1]>'6')){
                        dp[i]=dp[i-1];
                    }else{
                        dp[i]=dp[i-1]+dp[i-2];
                        if(i>=3&&s[i-2]=='0'){
                            dp[i]=dp[i-1];
                        }
                    }
                }
     
            }
            return dp[s.size()];
        }
    };
  • 相关阅读:
    redis 持久化
    Linux 配置 FastDFS
    查询相关
    外键查询
    pycharm 使用git
    比较时间
    文件导入import
    切分,字符串转列表
    时间相关
    django 自带序列化组件效果
  • 原文地址:https://www.cnblogs.com/joelwang/p/10480984.html
Copyright © 2020-2023  润新知