概述
Integer to Roman
class Solution {
public:
string getstring(string base, int v) {
string ret = "";
//v in [0, 9]
if (v <= 3) {
for (int i = 0; i < v; ++i) {
ret += base[0];
}
} else if (v == 4) {
ret = base.substr(0, 2);
} else if (v < 9) {
ret = base[1];
for (int i = 0; i < v - 5; ++i) {
ret += base[0];
}
} else if (v == 9) {
ret = base[0];
ret += base[2];
}
return ret;
}
string intToRoman(int num) {
string ans = "";
string bases[3] = {"IVX", "XLC", "CDM"};
int th = num / 1000;
num %= 1000;
for (int i = 0; i < th; ++i) {
ans += 'M';
}
ans += getstring(bases[2], num / 100);
num %= 100;
ans += getstring(bases[1], num / 10);
ans += getstring(bases[0], num % 10);
return ans;
}
};
最后
以上就是欢喜胡萝卜为你收集整理的leetcode 日经贴,Cpp code -Integer to Roman的全部内容,希望文章能够帮你解决leetcode 日经贴,Cpp code -Integer to Roman所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复