这个了解原理, 从大到小一点点测,然后相应的改变当前值,即可。
public class Solution {
public String intToRoman(int num) {
int[] radix = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
String[] symbol = {"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};
String result = "";
int i=0;
while(num>0){
int count = num/radix[i];
num %= radix[i];
while(count>0){
result += symbol[i];
count --;
}
i++;
}
return result;
}
}
Given an integer, convert it to a roman numeral.
Input is guaranteed to be within the range from 1 to 3999.