Integer to Roman
ps:把几种特殊的情况都列出来,然后进行加减即可
代码
public class solution{
public string intToRoMan(int num){
int[] values = {1000,900,500,400,100,90,50,40,10,9,5,4,1};
String[] strs = {"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"}; //所有可能的情况
StringBuilder sb = new StringBuilder();
for(int i = 0; i < values.length; i++){
while(num >= values[i]){
num -= values[i];
sb.append(strs[i]); //减去之后添加罗马数字如:99为XCIX
}
}
return sb.toString();
}
}