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

JavaScriptAlgorithm

簡単  - 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. 左から、次の記号はより大きい場合は引き算、ほかは足し算

integerToRoman()を実装してください。渡される数字は全て有効範囲内。


integerToRoman(123)
// 'CXXIII'

integerToRoman(1999)
// 'MCMXCIX'

integerToRoman(3420)
// 'MMMCDXX'

常にもっといい方法を求めよう。

(82)