python
思路是借鉴的评论,真的妙啊
I : 1 -> a
II : 2 -> b
III : 3 -> c
Iv:4 -> d
V:5 -> e
VI:6 -> f
VII:7 -> g
VIII:8 -> h
Ix:9 -> i
X:10 -> j
XL:40 -> k
L:50 -> l
XC:90 -> m
C:100 -> n
CD:400 -> o
D:500 -> p
CM:900 -> q
M:1000 -> r
class Solution:
def romanToInt(self, s: str) -> int:
s = s.replace('IV','d')
s = s.replace('IX','i')
s = s.replace('XL','k')
s = s.replace('XC','m')
s = s.replace('CD','o')
s = s.replace('CM','q')
print(s)
num_sum = 0
for i in range(0,len(s)):
num_sum = num_sum + self.string_to_num(s[i])
return num_sum
def string_to_num(self,c:chr) ->int:
'''
d.get('c', 5)
若是字典d中包含键"c",则返回键"c"的键值,若不包含键"c",则返回5。
'''
num = {
"I":1,
"d":4,
"V":5,
"i":9,
"X":10,
"k":40,
"L":50,
"m":90,
"C":100,
"o":400,
"D":500,
"q":900,
"M":1000
}
return num.get(c,None)

该博客介绍了一个Python实现的罗马数字到整数的转换算法。通过替换特定的罗马数字组合,然后累加对应的整数值,实现了从罗马数字字符串到整数的转化。涉及到的罗马数字包括I到M,以及它们的组合如IV、IX、XL等。
&spm=1001.2101.3001.5002&articleId=125849151&d=1&t=3&u=6082f1130d9d4b5ea43a3731efe381a6)
521

被折叠的 条评论
为什么被折叠?



