[Leetcode]-12 Integer to Roman
2018-01-14 13:53
399 查看
Given an integer, convert it to a roman numeral.
Input is guaranteed to be within the range from 1 to 3999.
思路:首先列出罗马数字4000以内的所有整点匹配串(3000-1000,900-100,90-10,9-1)
代码:
class Solution {
public:
string intToRoman(int num) {
string str;
string c [4][10] = {
{"","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"}
};
str.append(c[3][num / 1000 % 10]);
str.append(c[2][num / 100 % 10]);
str.append(c[1][num / 10 % 10]);
str.append(c[0][num % 10]);
return str;
}
};
Input is guaranteed to be within the range from 1 to 3999.
思路:首先列出罗马数字4000以内的所有整点匹配串(3000-1000,900-100,90-10,9-1)
代码:
class Solution {
public:
string intToRoman(int num) {
string str;
string c [4][10] = {
{"","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"}
};
str.append(c[3][num / 1000 % 10]);
str.append(c[2][num / 100 % 10]);
str.append(c[1][num / 10 % 10]);
str.append(c[0][num % 10]);
return str;
}
};
相关文章推荐
- DAY6:leetcode #12 Integer to Roman
- LeetCode12~14 Integer to Roman/Roman to Integer/Longest Common Prefix
- 04-08 leetcode-12 Integer to Roman
- LeetCode 12. Integer to Roman
- leetcode_12题——Integer to Roman(string,数学问题)
- LeetCode 12 Integer to Roman(C,C++,Java,Python)
- [LeetCode]12.Integer to Roman
- Leetcode 12. Integer to Roman
- LeetCode之12---Integer to Roman
- LeetCode12: Integer to Roman
- LeetCode----- 12.Integer to Roman
- LeetCode 12 - Integer to Roman
- LeetCode 12 integer to roman
- [LeetCode][12]Integer to Roman解析 int转罗马字符时间复杂度为常数的实现-Java实现
- LeetCode 12 Integer to Roman
- Leetcode_12_Integer to Roman
- LeetCode题解 #12 Integer to Roman
- LeetCode 12. Integer to Roman
- leetcode刷题12,13(Integer to Roman&Roman to Integer)
- LeetCode --- 12. Integer to Roman