zoukankan      html  css  js  c++  java
  • leetCode 12 整數转罗马数字

    原题点这里

    直接暴力模拟 6ms

    public static String getOne(int num,int e){
    
            String ans = null;
            switch (num){
                case 0: ans= "";
                        break;
                case 1: ans= "I";break;
                case 2: ans= "II";break;
                case 3: ans= "III";break;
                case 4: ans= "IV";break;
                case 5: ans= "V";break;
                case 6: ans= "VI";break;
                case 7: ans= "VII";break;
                case 8: ans= "VIII";break;
                case 9: ans= "IX";break;
            }
    
            if(e==0) return ans;
            if(e==1) {
                ans=ans.replace('X','C');
                ans=ans.replace('V','L');
                ans=ans.replace('I','X');
                return ans;
            }
            if(e==2){
                ans=ans.replace('X','M');
                ans=ans.replace('V','D');
                ans=ans.replace('I','C');
                return ans;
            }
            ans = ans.replace('I','M');
    
            return ans;
        }
    View Code

    也可以用贪心的算法

        public static String intToRoman2(int num) {
            int[] nums = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
            String[] romans = {"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
            int ind =0;
            StringBuilder ans = new StringBuilder("");
            while (ind<13){
                while (num>=nums[ind]){
    
                    ans.append(romans[ind]);
                    num-=nums[ind];
                }
                ind++;
    
            }
            return ans.toString();
        }
    View Code
  • 相关阅读:
    P1242 新汉诺塔(hanio)
    P2878 [USACO07JAN]保护花朵Protecting the Flowers
    P2096 最佳旅游线路
    [P1363] 幻想迷宫
    在矩阵上跑最小生成树
    tarjan+topsort
    tarjan缩点
    【P3398]】仓鼠找sugar
    树形数组暴力
    解决跨域问题
  • 原文地址:https://www.cnblogs.com/superxuezhazha/p/12608219.html
Copyright © 2011-2022 走看看