Leetcode:剑指offer46:数字翻译成字符串
作者:互联网
import javax.swing.*;
import java.util.*;
//
class Solution {
public int translateNum(int num){
String s=String.valueOf(num);
//dp数组表示到达第i位时,共有多少种表示方法
int[] dp=new int[s.length()+1];
dp[0]=1;
dp[1]=1;
for(int i=2;i<=s.length();i++){
String str=s.substring(i-2,i);
if(str.compareTo("10")>=0 && str.compareTo("25")<=0){
//如果第i位数与第i-1位数可以重新表示的话,就有dp[i-2]种表示方法
//+不把第i位和第i-1位连起来表示,就有dp[i-1]种表示方法
dp[i]=dp[i-1]+dp[i-2];
}else{
//把第i位和第i-1位连起来表示,就有dp[i-1]种表示方法
dp[i]=dp[i-1];
}
}
return dp[s.length()];
}
}
标签:num,String,offer46,int,valueOf,翻译成,import,Leetcode,dp 来源: https://www.cnblogs.com/lisamihama/p/16098381.html