Skip to content

Latest commit

 

History

History
24 lines (22 loc) · 398 Bytes

10.md

File metadata and controls

24 lines (22 loc) · 398 Bytes
function resolve(roman) {
  var map = {
    M: 1000, 
    D: 500, 
    C: 100,
    L: 50, 
    X: 10,
    V: 5, 
    I: 1
  };
  var index = 0, integer = 0;
  while(roman[index++]) {
    integer += map[roman[index - 1]] * (
      map[roman[index - 1]] < (map[roman[index]] || 0) ? -1 : 1
    );
  }
  return integer;
}

console.assert(resolve('MCDXXXVII') === 1437, 1437);

by @barretlee