LeetCode #11 简单题(给定了范围,直接硬编码就好了。。)

        题目:整数转罗马数字

        题解:范围限定在0-3999,硬编码就好- -懒得想逻辑了

        class Solution {
        public:
            string intToRoman(int num) {
                int a = num / 1000;
                int b = (num / 100) % 10;
                int c = (num / 10) % 10;
                int d = num % 10;
                string ans;
                for (int i = 0; i < a; ++i)ans = ans + "M";
                if (b == 9)ans = ans + "CM";
                else if (b == 8)ans = ans + "DCCC";
                else if (b == 7)ans = ans + "DCC";
                else if (b == 6)ans = ans + "DC";
                else if (b == 5)ans = ans + "D";
                else if (b == 4)ans = ans + "CD";
                else if (b == 3)ans = ans + "CCC";
                else if (b == 2)ans = ans + "CC";
                else if (b == 1)ans = ans + "C";
        
                if (c == 9)ans = ans + "XC";
                else if (c == 8)ans = ans + "LXXX";
                else if (c == 7)ans = ans + "LXX";
                else if (c == 6)ans = ans + "LX";
                else if (c == 5)ans = ans + "L";
                else if (c == 4)ans = ans + "XL";
                else if (c == 3)ans = ans + "XXX";
                else if (c == 2)ans = ans + "XX";
                else if (c == 1)ans = ans + "X";
        
                if (d == 9)ans = ans + "IX";
                else if (d == 8)ans = ans + "VIII";
                else if (d == 7)ans = ans + "VII";
                else if (d == 6)ans = ans + "VI";
                else if (d == 5)ans = ans + "V";
                else if (d == 4)ans = ans + "IV";
                else if (d == 3)ans = ans + "III";
                else if (d == 2)ans = ans + "II";
                else if (d == 1)ans = ans + "I";
        
                return ans;
            }
        };
        相关文章
        相关标签/搜索
        蓝月亮资料大全期期准118图库天下彩天空彩免费大全香港蓝月亮精选资料六合宝典天天彩票新版