LeetCode11-数字转成罗马数字

image-20230306205525485

解答:

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{

// 注意特殊情况 C X I
// CM 900 CD 400 XC 90 XL 40 IX 9 IV 4
public String IntToRomanNumber(int x){
int[] ints = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
String[] str = {"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
String needStr="";
for(int i=0;i< ints.length;i++){
while(x >= ints[i]){
x = x - ints[i];
needStr += str[i];
}

}
return needStr;

}

}



__END__