Seven different symbols represent Roman numerals with the following values:
Symbol Value
I 1
V 5
X 10
L 50
C 100
D 500
M 1000Roman numerals are formed by appending the conversions of decimal place values from highest to lowest. Converting a decimal place value into a Roman numeral has the following rules:
If the value does not start with
4or9, select the symbol of the maximal value that can be subtracted from the input, append that symbol to the result, subtract its value, and convert the remainder to a Roman numeral.If the value starts with
4or9use the subtractive form representing one symbol subtracted from the following symbol, for example,4is1(I) less than5(V):IVand9is1(I) less than10(X):IX. Only the following subtractive forms are used:4(IV),9(IX),40(XL),90(XC),400(CD) and900(CM).Only powers of
10(I,X,C,M) can be appended consecutively at most3times to represent multiples of10. You cannot append5(V),50(L), or500(D) multiple times. If you need to append a symbol4times use the subtractive form.
You are given an integer, convert it to a Roman numeral.
Example 1:
Input: num = 3749
Output: "MMMDCCXLIX"Explanation:
3000 = MMM as 1000 (M) + 1000 (M) + 1000 (M)
700 = DCC as 500 (D) + 100 (C) + 100 (C)
40 = XL as 10 (X) less of 50 (L)
9 = IX as 1 (I) less of 10 (X)
Note: 49 is not 1 (I) less of 50 (L) because the conversion is based on decimal places
Example 2:
Input: num = 1994
Output: "MCMXCIV"Explanation:
1000 = M
900 = CM
90 = XC
4 = IV
Constraints:
1 <= num <= 3999