46 把數字翻譯成字串

2021-10-03 14:04:52 字數 627 閱讀 2073

給定乙個數字,我們按照如下規則把它翻譯為字串:0 翻譯成 「a」 ,1 翻譯成 「b」,……,11 翻譯成 「l」,……,25 翻譯成 「z」。乙個數字可能有多個翻譯。請程式設計實現乙個函式,用來計算乙個數字有多少種不同的翻譯方法。

示例 1:

輸入: 12258

輸出: 5

解釋: 12258有5種不同的翻譯,分別是"bccfi", "bwfi", "bczi", "mcfi"和"mzi"

題解:按照跳台階的方法,但是要判斷能否跳兩級台階(兩個近鄰的數是否能表示乙個字母),如果不能一次從下面兩級跳上來,那麼跳到這一階的方法和上一階的方法是一樣的。

class solution 

else

}if(stoi(numstring.substr(i-1,2)) >= 10 && stoi(numstring.substr(i-1,2)) <= 25)

dp[i] = dp[i-1]+dp[i-2];

else

dp[i] = dp[i-1];

}return dp.back();

}};

46 把數字翻譯成字串

題目 給定乙個數字,我們按照如下規則把它翻譯為字串 0翻譯成 a 1翻譯成 b 25翻譯成 z 乙個數字可能有多個翻譯。請實現乙個函式,計算乙個數字有多少種不同的翻譯方法。def digit to string num num str num length len num res 0 length ...

劍指 46 把數字翻譯成字串

題目描述 演算法分析 f r 表示以r為開始 r最小取0 到最右端所組成的數字能夠翻譯成字串的種數。對於長度為n的數字,f n 0,f n 1 1,求f 0 遞推公式為 f r 2 f r 1 g r 2,r 1 f r 其中,如果r 2,r 1能夠翻譯成字元,則g r 2,r 1 1,否則為0。因...

把數字翻譯成字串

給定乙個數字,我們按照如下規則把它翻譯為字串 0翻譯成 a 1翻譯成 b 11翻譯成 l 25翻譯成 z 乙個數字可能有多個翻譯。例如12258有5種不同的翻譯,它們分別 bccfi bwfi bczi mcfi 和 mzi 請程式設計實現乙個函式用來計算乙個數字有多少種不同的翻譯方法 1.dfs ...