Problem: 12. 整数转罗马数字
文章目录
- 思路
- [💖 打表 + 贪心](#💖 打表 + 贪心)
思路
💖 打表 + 贪心
Java
class Solution {
public String intToRoman(int num) {
int[] value = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9 , 5, 4, 1};
String[] reps = {"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
StringBuffer ans = new StringBuffer();
for (int i = 0; i < value.length; i++) {
while (num >= value[i]) {
num -= value[i];
ans.append(reps[i]);
}
}
return ans.toString();
}
}