133. ローマ数字を整数に変換する

簡単  - accepted / - tried

ローマ数字(Roman numerals)は以下の記号の組み合わせ。

Symbol I V X L C D M
Value 1 5 10 50 100 500 1000

Standard formでは減算則が用いられるので、4 はIIIIではなくIVで、9はVIIIIではなくIX、40(XL) や900(CM)なども対象。

簡単に説明すると、ローマ数字以下のルールを従う。

  1. 左から大きい順で記号を並べる
  2. 左から、次の記号はより大きい場合は引き算、ほかは足し算

romanToInteger()を実装してください。渡される文字列は全部有効なローマ数字。


romanToInteger('CXXIII')
// 123

romanToInteger('MCMXCIX')
// 1999

romanToInteger('MMMCDXX')
// 3420

時間と空間複雑性はどう?

(1)
(110)