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

[leetcode] 12. 整数转罗马数字

时间:2018-06-26 23:52:41      阅读:307      评论:0      收藏:0      [点我收藏+]

标签:字符串   直接   CM   +=   串处理   .com   基本   TE   就是   

12. 整数转罗马数字

字符串处理,题超级简单,读懂题直接开干就行。
基本思路就是从大往小一点一点的来表示,具体看代码把:

class Solution {
public:
    string intToRoman(int num) {
        string ans = "";

        int m = 0;
        m = num / 1000;
        for (int i = 0; i < m; i++) {
            ans += ‘M‘;
        }
        num %= 1000;

        if (num >= 900) {
            ans += "CM";
            num -= 900;
        }
        if (num >= 500) {
            ans += "D";
            num -= 500;
        }
        if (num >= 400) {
            ans += "CD";
            num -= 400;
        }
        if (num >= 100) {
            int c = 0;
            c = num / 100;
            num %= 100;
            for (int i = 0; i < c; i++) {
                ans += ‘C‘;
            }
        }
        if (num >= 90) {
            ans += "XC";
            num -= 90;
        }
        if (num >= 50) {
            ans += "L";
            num -= 50;
        }
        if (num >= 40) {
            ans += "XL";
            num -= 40;
        }
        if (num >= 10) {
            int x = 0;
            x = num / 10;
            num %= 10;
            for (int i = 0; i < x; i++) {
                ans += ‘X‘;
            }
        }

        if (num >= 9) {
            ans += "IX";
            num -= 9;
        }
        if (num >= 5) {
            ans += "V";
            num -= 5;
        }
        if (num >= 4) {
            ans += "IV";
            num -= 4;
        }
        if (num >= 1) {
            int i = 0;
            i = num;
            for (int k = 0; k < i; k++) {
                ans += ‘I‘;
            }
        }

        return ans;
    }
};

[leetcode] 12. 整数转罗马数字

标签:字符串   直接   CM   +=   串处理   .com   基本   TE   就是   

原文地址:https://www.cnblogs.com/acbingo/p/9231639.html

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