• Integer to Roman LeetCode Java


    描述
    Given an integer, convert it to a roman numeral.
    Input is guaranteed to be within the range from 1 to 3999.
    分析

    代码

     1 public class IntegerToRoman {
     2 
     3     public static void main(String[] args) {
     4         // TODO Auto-generated method stub
     5         int num = 187;
     6         System.out.println(intToRoman(num));
     7     }
     8 
     9     public static String intToRoman(int num) {
    10         int radix[] = { 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 };
    11         String symbol[] = { "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I" };
    12         String roman = "";
    13         for (int i = 0; num > 0; ++i) {
    14             int count = num / radix[i];
    15             num %= radix[i];
    16             for (; count > 0; --count)
    17                 roman += symbol[i];
    18         }
    19         return roman;
    20     }
    21 
    22 }

    看到有用递归的方法(转载)

     1  public static String intToRoman2(int num) {
     2                   if(num>=1000) return "M"+intToRoman(num-1000);
     3                   if(num>=900) return "CM"+intToRoman(num-900);
     4                   if(num>=500) return "D"+intToRoman(num-500);
     5                   if(num>=400) return "CD"+intToRoman(num-400);
     6                   if(num>=100) return "C"+intToRoman(num-100);
     7                   if(num>=90) return "XC"+intToRoman(num-90);
     8                   if(num>=50) return "L"+intToRoman(num-50);
     9                   if(num>=40) return "XL"+intToRoman(num-40);
    10                   if(num>=10) return "X"+intToRoman(num-10);
    11                   if(num>=9) return "IX"+intToRoman(num-9);
    12                   if(num>=5) return "V"+intToRoman(num-5);
    13                   if(num>=4) return "IV"+intToRoman(num-4);
    14                   if(num>=1) return "I"+intToRoman(num-1);
    15                   return "";
    16              }
  • 相关阅读:
    Document
    Document
    Document
    Document
    Document
    Document
    手动版 轮播图
    Echarts tooltip 自定义formatter设置字体颜色
    CSS3中 translate、transform 和 translation 的区别和联系,及开发问题解决
    background 属性及遇到的问题
  • 原文地址:https://www.cnblogs.com/ncznx/p/9195594.html
Copyright © 2020-2023  润新知