罗马数字转整数

2018-10-16  本文已影响5人  隔壁老王的隔壁啊
/**
 * 罗马数字转整数(1-399)
 */
var romanToInt = function (s) {
    let map = new Map();
    map.set('I',1);
    map.set('V',5);
    map.set('X',10);
    map.set('L',50);
    map.set('C',100);
    map.set('D',500);
    map.set('M',1000);
    let rec = 0,last  ,cur ;
    for (const a of s) {
        cur = map.get(a);
        if(last !== undefined && last < cur ) 
            {rec -= last ;
            rec += cur ;
            rec -= last ;}
        else 
             rec += cur ;
        last = cur ;
    }
    return rec ;
};

(async () => {
    console.log(romanToInt('MCMXCIV'))
})()
上一篇 下一篇

猜你喜欢

热点阅读