码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode Integer to Roman

时间:2014-06-16 07:04:22      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   code   java   http   

bubuko.com,布布扣
class Solution {
private:
    const static char* pattern[];
    const static char* roman_digit[];
public:
    string intToRoman(int num) {
        if (num < 1 || num > 3999) return "";
        string res("");
        int i=0;
        while (num) {
            res = getSingleRomanDigit(num % 10, i++) + res;
            num /= 10;
        }
        return res;
    }

    string getSingleRomanDigit(int digit, int mag) {
        if (digit == 0) return "";
        if (digit > 9 || digit < 1 || mag > 3 || mag < 0) {
            return "FORMAT ERROR";
        }
        string res;
        int pi = 0;
        for (int i=0; (pi = pattern[digit][i]) != \0; i++) {
            pi = pi - 0;
            res.push_back(roman_digit[mag][pi]);
        }
        return res;
    }
};
const char* Solution::pattern[] =  {"x", "0", "00", "000", "01", "1", "10", "100", "1000", "02"};
const char* Solution::roman_digit[] = {"IVX", "XLC", "CDM", "M"};
bubuko.com,布布扣

水一发

LeetCode Integer to Roman,布布扣,bubuko.com

LeetCode Integer to Roman

标签:style   class   blog   code   java   http   

原文地址:http://www.cnblogs.com/lailailai/p/3783838.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!