码迷,mamicode.com
首页 > 其他好文 > 详细

解码方法

时间:2017-08-07 01:19:41      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:solution   enc   代码   number   i++   技术分享   int   new   png   

代码:

class Solution {
public:
/**
* @param s a string, encoded message
* @return an integer, the number of ways decoding
*/

int numDecodings(string& s) {
// Write your code here
int size = s.size();
if(size == 0)
return 0;

int *dp = new int[size];
dp[0] = 1*(s[0]!=‘0‘);
if(size >= 2)
{
string t = s.substr(0,2);
int n = atoi(t.c_str());
dp[1] = dp[0]*(s[1]!=‘0‘) + (n>0 && n<=26);

for(int i=2; i<size; i++)
{
string t = s.substr(i-1,2);
int n = atoi(t.c_str());
dp[i] = dp[i-1]*(s[i]!=‘0‘) + (n>=10 && n<=26)*dp[i-2];
}
}
return dp[size-1];
}
};

 截图:

技术分享

 

解码方法

标签:solution   enc   代码   number   i++   技术分享   int   new   png   

原文地址:http://www.cnblogs.com/w1500802028/p/7296532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!