您的位置:首页 > Web前端 > JavaScript

[LeetCode][JavaScript]Roman to Integer

2015-08-30 00:40 645 查看

Roman to Integer

Given a roman numeral, convert it to an integer.

Input is guaranteed to be within the range from 1 to 3999.

https://leetcode.com/problems/roman-to-integer/

罗马数字转阿拉伯数字。

从后往前扫,如果当前的数大于之前的数,加上这个数,反之减去当前的数。

/**
* @param {string} s
* @return {number}
*/
var romanToInt = function(s) {
var map = {};
map["I"] = 1; map["V"] = 5; map["X"] = 10; map["L"] = 50;
map["C"] = 100; map["D"] = 500; map["M"] = 1000;
var res, tmp = 0;
for(var i = s.length - 1; i >= 0; i--){
if(!res){
res = map[s[i]];
continue;
}
if(map[s[i]] >= map[s[i + 1]]){
res += map[s[i]];
}else{
res -= map[s[i]];
}
}
return res;
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: