12.整数转罗马数字

时游小于 1 分钟LeetCode

12.整数转罗马数字

/*
 * @lc app=leetcode.cn id=12 lang=typescript
 *
 * [12] 整数转罗马数字
 */

// @lc code=start
function intToRoman(num: number): string {
	const romanNumber = new Map<number, string>([
		[1000, "M"],
		[900, "CM"],
		[500, "D"],
		[400, "CD"],
		[100, "C"],
		[90, "XC"],
		[50, "L"],
		[40, "XL"],
		[10, "X"],
		[9, "IX"],
		[5, "V"],
		[4, "IV"],
		[1, "I"],
	]);

	let res: string = "";
	while (num > 0) {
		for (const [key, value] of romanNumber) {
			if (num >= key) {
				res += value;
				num -= key;
				break;
			}
		}
	}

    return res
}

console.log(intToRoman(789));


// @lc code=end

上次编辑于:
贡献者: 15327360835
Loading...