- 题目不难,关键是找对单位,如 900 400 90 40 9 4,然后模拟减法循环走一遍
- github地址 每日持续更新题解,前期有C++版本和JavaScript双版本,现持续更新JavaScript版本,欢迎star
JS代码
/**
* @param {number} num
* @return {string}
*/
// 题目不难,关键是找对单位数字 如 900 400 90 40 9 4对应的情况
// 模拟减法循环走一遍,
var intToRoman = function(num) {
let sum = 13
let enums = [1000,900,500,400,100,90,50,40,10,9,5,4,1]
let chars = ['M','CM','D','CD','C','XC','L','XL','X','IX','V','IV','I']
let res=''
for(let i=0;i<sum;i++){
while(num>=enums[i])
{
res+=chars[i]
num-=enums[i]
}
}
return res;
};