Leetcode 12. Integer to Roman
https://leetcode.com/problems/integer-to-roman/submissions/
using namespace std;
class Solution {
public:
string reps="IVXLCDM";
string itor(int k,int l){
switch(k){
case 0:
case 1:
case 2:
case 3: return string(k,reps[l]);
case 4: return reps[l]+string(1,reps[l+1]);
case 5: return string(1,reps[l+1]);
case 6:
case 7:
case 8: return reps[l+1]+string((k%5),reps[l]);
case 9: return reps[l]+string(1,reps[l+2]);
}
return "";
}
string intToRoman(int num) {
string ans;
ans+=itor(num/1000,6),num%=1000;
ans+=itor(num/100,4),num%=100;
ans+=itor(num/10,2),num%=10;
ans+=itor(num,0);
return ans;
}
};

更多精彩