leetcode12. Integer to Roman

来源:互联网 发布:linux分区方案 编辑:程序博客网 时间:2024/04/28 04:17

12. Integer to Roman

Given an integer, convert it to a roman numeral.

Input is guaranteed to be within the range from 1 to 3999.

解法

将每一位,从0-9相应的罗马数字列出来,相连接。

public class Solution {    public static String intToRoman(int num) {        String[] M = {"", "M", "MM", "MMM"};        String[] C = {"", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"};        String[] X = {"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"};        String[] I = {"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"};        return M[num/1000] + C[num/100%10] + X[num/10%10] + I[num%10];    }}

这里写图片描述

tips

一个四位数,获得个十百千的计算方法:
个:num%10
十:num/10%10
百:num/100%10
千:num/1000
或:
个:num%10
十:(num%100)/10
百:(num%1000)/100
千:num/1000

0 0