Skip to content

Commit 676c4f0

Browse files
authored
Create 12. Integer to Roman
1 parent b8ad3d5 commit 676c4f0

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

12. Integer to Roman

+70
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
class Solution {
2+
public:
3+
string intToRoman(int num) {
4+
5+
string result;
6+
7+
while(num){
8+
9+
while(num >= 1000){
10+
result += "M";
11+
num -= 1000;
12+
}
13+
while(num >= 500){
14+
if(num >= 900){
15+
result += "CM";
16+
num -= 900;
17+
break;
18+
}
19+
result += "D";
20+
num -= 500;
21+
}
22+
while(num >= 100){
23+
if(num >= 400){
24+
result += "CD";
25+
num -= 400;
26+
break;
27+
}
28+
result += "C";
29+
num -= 100;
30+
}
31+
while(num >= 50){
32+
if(num >= 90){
33+
result += "XC";
34+
num -= 90;
35+
break;
36+
}
37+
result += "L";
38+
num -= 50;
39+
}
40+
while(num >= 10){
41+
if(num >= 40){
42+
result += "XL";
43+
num -= 40;
44+
break;
45+
}
46+
result += "X";
47+
num -= 10;
48+
}
49+
while(num >= 5){
50+
if(num >= 9){
51+
result += "IX";
52+
num -= 9;
53+
break;
54+
}
55+
result += "V";
56+
num -= 5;
57+
}
58+
while(num >= 1){
59+
if(num >= 4){
60+
result += "IV";
61+
num -= 4;
62+
break;
63+
}
64+
result += "I";
65+
num -= 1;
66+
}
67+
}
68+
return result;
69+
}
70+
};

0 commit comments

Comments
 (0)