LeetCode_Integer to Roman

description:将整形数据转化成罗马字符,只表示1-3999

解法:用二维数组囊括所有罗马字符,然后用整形数据的每一位去找对应的罗马字符

string intToRoman(int num){
        string res;
        string vec[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"}
                            };
        int i = 0;
        while (num) {
            int temp = num % 10;
            res = vec[i][temp] + res;
            num /= 10;
            ++i;
        }
        return res;
    }

猜你喜欢

转载自blog.csdn.net/lancelot0902/article/details/92556233