LeetCode题解:Roman to Integer
来源:互联网 发布:java开源仓库管理系统 编辑:程序博客网 时间:2024/05/17 13:13
Roman to Integer
Given a roman numeral, convert it to an integer.
Input is guaranteed to be within the range from 1 to 3999.
思路:
字母对数字的一一对应累积关系。唯一需要注意的是,之前一个字母对应的数字如果小于当前字母对应的数字,则需要特殊处理。
题解:
std::map<char, int> char_mapper{ {'I', 1}, {'V', 5}, {'X', 10}, {'L', 50}, {'C', 100}, {'D', 500}, {'M', 1000}};class Solution {public: int romanToInt(string s) { int value = 0; char last = s[0]; for(auto ch : s) { if (char_mapper[last] < char_mapper[ch]) { // meet the special case value -= char_mapper[last] * 2; value += char_mapper[ch]; } else value += char_mapper[ch]; last = ch; } return value; }};
- LeetCode题解:Roman to Integer
- LeetCode题解:Integer to Roman
- LeetCode题解:Roman to Integer
- LeetCode题解:Integer to Roman
- LeetCode 题解(58): Integer to Roman
- LeetCode 题解(73): Roman to Integer
- leetcode题解||Integer to Roman问题
- leetcode题解 || Roman to Integer问题
- LeetCode题解——Roman to Integer
- LeetCode题解——Integer to Roman
- LeetCode 12 Integer to Roman题解
- LeetCode题解-12-Integer to Roman
- LeetCode题解-13-Roman to Integer
- 12. Integer to Roman LeetCode题解
- 13. Roman to Integer LeetCode题解
- leetcode题解-12. Integer to Roman
- leetcode题解-13. Roman to Integer
- LeetCode Roman to Integer && Integer to Roman
- Delphi XE 检查内存泄露
- 博客--start
- LeetCode题解:Remove Duplicates from Sorted List II
- 谷歌浏览器Chrome缓存路径
- LeetCode题解:Simplify Path
- LeetCode题解:Roman to Integer
- 需求分析-关于报表统计类的需求分析
- quickly find the median of a sequence of numbers
- ubuntu 知识点2
- Java Synchronized
- /dev/cdrom: No medium found
- double类型数据的精确运算
- 堆(heap)和栈(stack)有什么区别??
- 元宵——窃书女子