Leetcode #91 Decode Ways
来源:互联网 发布:淘宝开放平台sdk下载 编辑:程序博客网 时间:2024/05/22 09:45
A message containing letters from A-Z
is being encoded to numbers using the following mapping:
'A' -> 1'B' -> 2...'Z' -> 26
Given an encoded message containing digits, determine the total number of ways to decode it.
For example,
Given encoded message "12"
, it could be decoded as "AB"
(1 2) or "L"
(12).
The number of ways decoding "12"
is 2.
Difficulty:Medium
解法一,NP法,超时了。
int count(string s){ int ans = 0; int len = s.length(); if(len==0) return 1; if(len==1) return 1; if(len==2&&s[0]-'0'>=2&&s[1]-'0'>6) return 1; if(len==2&&s[0]-'0'<=2&&s[1]-'0'<=6) return 2; //cout<<"111"<<endl; string s1,s2,s3; s1.push_back(s[0]); for(int i = 1;i<len;i++) s2.push_back(s[i]); ans = ans + count(s1)*count(s2); //cout<<ans<<endl; s1.push_back(s[1]); if(s1[0]-'0'<=2&&s1[1]-'0'<=6) { for(int i = 2;i<len;i++) s3.push_back(s[i]); ans = ans + count(s3); } return ans; } int numDecodings(string s) { if(s.length()==0) return 0; return count(s); }
int numDecodings(string s) { int len = s.length(); vector<int> nums(len+1,0); if(len==0) return 0; if(s[0]=='0') return 0; if(len==1) return 1; nums[0] = 1;nums[1] = 1; for(int i = 2;i<=len;i++) { if(s[i-1]!='0') nums[i] = nums[i-1]; if(s[i-2]!='0') if((s[i-2]-'0'==1)||(s[i-2]-'0'==2&&s[i-1]-'0'<=6)) nums[i] = nums[i]+nums[i-2]; } return nums[len]; }
0 0
- LeetCode 91: Decode Ways
- [leetcode 91] Decode Ways
- [LeetCode 91]Decode Ways
- leetcode || 91、Decode Ways
- Leetcode 91 Decode Ways
- LeetCode(91) Decode Ways
- leetcode 91:Decode Ways
- Leetcode #91 Decode Ways
- leetcode 91: Decode Ways
- LeetCode 91: Decode Ways
- 【leetcode】【91】Decode Ways
- [LeetCode-91] Decode Ways
- leetcode 91 Decode Ways
- LeetCode 91 Decode Ways
- Leetcode 91 Decode Ways
- Leetcode(91) Decode Ways
- Leetcode Decode Ways 91
- LeetCode 91 Decode Ways
- Android自定义Toast总结(上)
- AVL树——深入浅出,一目了然
- MySQL的数据关系处理流程
- 访问者模式
- Leetcode: wordBreak
- Leetcode #91 Decode Ways
- 基于spark实现表的join操作
- Linux-命令-find
- Codeforces Round #250 (Div. 1) B. The Child and Zoo(排序+并查集)(常规好题)
- 【小熊刷题】Two Sum II - sorted array
- muduo::EventLoopThread、EventLoopThreadPool分析
- Android下创建一个SQLite数据库
- Javascript高级程序设计第八九章
- 元素查找