leetcode 12. Integer to Roman

来源:互联网 发布:淘宝上新程丰是正品吗 编辑:程序博客网 时间:2024/05/16 09:02
//Given an integer, convert it to a roman numeral. //Input is guaranteed to be within the range from 1 to 3999. //【罗马数字】//1~9: {"I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"};//10~90: {"X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"};//100~900: {"C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"};//1000~3000: {"M", "MM", "MMM"}.public class Solution {public static void main(String[] args) {int a = 20;String result = intToRoman(a);System.out.println(result);} public static String intToRoman(int num) { String result = ""; int digit = 0; int number = 0; String[][] roman = {//定义罗马数字二维数组 {"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"}, {"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"}, {"", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"}, {"", "M", "MM", "MMM"} }; while(num != 0){//从个位开始判断num的值,并赋予相应的罗马数字值 number = num%10; result = roman[digit][number]+result;//高位在前 num = num/10; digit++; } return result; }}

0 0
原创粉丝点击