罗马数字转整数Leetcode13

Posted big_brother

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了罗马数字转整数Leetcode13相关的知识,希望对你有一定的参考价值。

该题较为简单,但是需要知道罗马数字的表示以及取值。用了一下map,其实之前没用过,但仔细看了一下跟python的字典实际上差不多,扫了一遍函数就直接可以用了、

class Solution {
public:
    int romanToInt(string s) {
        unordered_map<char, int> Dic = { { I , 1 }, { V , 5 }, { X , 10 }, { L , 50 }, { C , 100 }, { D , 500 }, { M , 1000 } };
        int sum = Dic[s.back()];
        for(int i = s.length() - 2; i >= 0; --i){
            sum +=  (Dic[s[i]] < Dic[s[i+1]] ? -Dic[s[i]] : Dic[s[i]]);
        }
        return sum;
    }
};

 

以上是关于罗马数字转整数Leetcode13的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 13 罗马数字转整数[找规律 多条件判断] HERODING的LeetCode之路

LeetCode刷题13-简单-罗马数字转整数

LeetCode刷题13-简单-罗马数字转整数

LeetCode 13. 罗马数字转整数 java 两种解法

LeetCode 13. 罗马数字转整数 java 两种解法

LeetCode13.罗马数字转整数(Python3)