Given an integer, convert it to a roman numeral.
Input is guaranteed to be within the range from 1 to 3999.
查表法:
class Solution {
public:
string intToRoman(int num) {
string roman[] = {"I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX",
"X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC",
"C", "CC", "CCC", "CD", "D", "DC", "DCC","DCCC", "CM",
"M", "MM", "MMM"};
string result = "";
int weishu = 0;
for(int weishu = 0; weishu < 4 && num > 0; weishu++)
{
int yushu = num % 10;
if(yushu > 0){
result = roman[weishu * 9 + yushu-1] + result;
}
num = num / 10;
}
return result;
}
};