[LeetCode] Roman to Integer

来源:互联网 发布:位面淘宝 编辑:程序博客网 时间:2024/05/14 09:47

Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 to 3999.

代码:

inline int map(const char c) {    switch (c) {    case 'I': return 1;    case 'V': return 5;    case 'X': return 10;    case 'L': return 50;    case 'C': return 100;    case 'D': return 500;    case 'M': return 1000;    default: return 0;}}int romanToInt(string s) {    int result = 0;    for (size_t i = 0; i < s.size(); i++) {        if (i > 0 && map(s[i]) > map(s[i - 1])) {            result += (map(s[i]) - 2 * map(s[i - 1]));        } else {            result += map(s[i]);        }    }    return result;}



0 0
原创粉丝点击