题目

Given an integer, convert it to a roman numeral.

Input is guaranteed to be within the range from 1 to 3999.

Python

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Solution:
def intToRoman(self, nums):
syms = [
["M", 1000],
["CM", 900],
["D", 500],
["CD", 400],
["C", 100],
["XC", 90],
["L", 50],
["XL", 40],
["X", 10],
["IX", 9],
["V", 5],
["IV", 4],
["I", 1],
]
r = ""
for i in syms:
while nums >= i[1]:
nums -= i[1]
r += i[0]
return r