首页 > 代码库 > Leetcode#91 Decode Ways
Leetcode#91 Decode Ways
原题地址
动态规划题,注意0导致的小陷阱。
代码:
1 int numDecodings(string s) { 2 if (s.empty() || s[0] < ‘1‘ || s[0] > ‘9‘) return 0; 3 4 int sum = s[s.length() - 1] >= ‘1‘ && s[s.length() - 1] <= ‘9‘ ? 1 : 0; 5 int nextnext = 1; 6 int next = sum; 7 8 for (int i = s.length() - 2; i >= 0; i--) { 9 if (s[i] >= ‘0‘ && s[i] <= ‘9‘) {10 if (s[i] == ‘1‘ || (s[i] == ‘2‘ && s[i + 1] >= ‘0‘ && s[i + 1] <= ‘6‘))11 sum = next + nextnext;12 else if (s[i] == ‘0‘)13 sum = 0;14 else15 sum = next;16 nextnext = next;17 next = sum;18 }19 else20 return 0;21 }22 23 return sum;24 }
Leetcode#91 Decode Ways
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。