leetCode(roman-to-integer)-罗马数转化为整数

题目:给定一个罗马数,将其转化为整数并进行输出。

例如,2在罗马数字中被写成II,就是两个加在一起。12是写成,XII,也就是X+II。数字二十七是二十七,也就是XX+V+II。

罗马数字通常从左到右写得最大。然而,4的数字不是IIII。相反,数字4被写成IV,因为1在5之前减去它等于4。同样的原则也适用于9号,它被写成IX。有六种情况下使用减法:

I可以在V(5)和X(10)之前放置分别是4和9。

X可以放在L(50)和C(100)之前,分别是40和90。

C可以放置在D(500)和M(1000)之前,分别是400和900。

给定一个罗马数字,把它转换成整数。输入在从1到3999的范围内。

思路:

直接用一个辅助的HashMap容器存储罗马字母与数字的映射,将几种减法的情况单独考虑。

leetCode(roman-to-integer)-罗马数转化为整数_第1张图片

你可能感兴趣的:(LeetCode,罗马数转整数)