題目描述
解題思路
解法一:貪心哈希表
通過題目描述,可以得到以下數字及其羅馬數的哈希表。
貪心法則:儘可能的使用最大數來表示。
比如:1954,依次選擇1000,900,50,4來表示得到MCMLIV
python代碼
class Solution:
def intToRoman(self, num: int) -> str:
hashmap = {1000:'M',900:'CM',500:'D',400:'CD',100:'C',90:'XC',
50:'L',40:'XL',10:'X',9:'IX',5:'V',4:'IV',1:'I'}
res = ''
for i in hashmap:
if num//i != 0:
count = num//i
res += hashmap[i] * count
num %= i
return res