https://leetcode.com/problems/integer-to-roman/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
* @param {number} num
* @return {string}
*/
var intToRoman = function(num) {
let res = '';
let nums = ['1000', '900', '500', '400', '100', '90', '50', '40', '10', '9', '5', '4', '1'];
let map = {
1: 'I',
4: 'IV',
5: 'V',
9: 'IX',
10: 'X',
40: 'XL',
50: 'L',
90: 'XC',
100: 'C',
400: 'CD',
500: 'D',
900: 'CM',
1000: 'M'
};
nums.forEach(n => {
let t = Math.floor(num / n);
num -= n * t;
res += map[n].repeat(t);
});
return res;
};