LeetCode#13-Roman to Integer
Posted PrConstantin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode#13-Roman to Integer相关的知识,希望对你有一定的参考价值。
关于罗马数字的基础知识
参考:罗马数字
基本思路
- 从前向后遍历左右罗马数字
- 如果当前数字对应的阿拉伯数字大于后面的数字则加上当前数字
- 如果当前数字对应的阿拉伯数字小于后面的数字则减去当前数字
- 最后加上最后一个数字
let romanToInt = (s) =>
let roman =
"I":1,
"V":5,
"X":10,
"L":50,
"C":100,
"D":500,
"M":1000
let ans = 0
for(let i=0;i<s.length-1;i++)
if(roman[s[i]]>=roman[s[i+1]])
ans += roman[s[i]]
else
ans -= roman[s[i]]
ans+=roman[s[s.length-1]]
return ans
console.log(romanToInt('IV'))
console.log(romanToInt('I'))
console.log(romanToInt('DCXXI'))
以上是关于LeetCode#13-Roman to Integer的主要内容,如果未能解决你的问题,请参考以下文章
#Leetcode# 13. Roman to Integer