Skip to content

整数转罗马数字

LeetCode-12

js
/**
 * 定义了两个数组:romanArr 数组和 valueArr 数组。
 * 其中,romanArr 数组存放着所有的罗马数字,而 valueArr 数组存放着每个罗马数字对应的值。
 *
 * 用一个循环来遍历这两个数组。
 * 如果num整数比当前的值大,则需要计算该罗马数字对应的个数,并将其添加到结果字符串result中
 */

var intToRoman = function (num) {
  var romanArr = ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"];
  var valueArr = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1];
  let result = ''
  for (let i = 0; i < romanArr.length; i++) {
    while (num >= valueArr[i]) {
      num -= valueArr[i]
      result += romanArr[i]
    }
  }
  return result
}