深圳企业社保网站官网,重庆房产信息网,软件开发网,做网页的兼职平台12.整数转罗马数字 方法#xff1a;模拟
分析罗马数字的规则是#xff1a;对于罗马数字从左到右的每一位#xff0c;选择尽可能大的符号值
根据罗马数字的唯一表示法#xff0c;为了表示一个给定的整数num#xff0c;寻找不超过num的最大符号值#xff0c;将num减去该符…12.整数转罗马数字 方法模拟
分析罗马数字的规则是对于罗马数字从左到右的每一位选择尽可能大的符号值
根据罗马数字的唯一表示法为了表示一个给定的整数num寻找不超过num的最大符号值将num减去该符号值然后继续寻找不超过num的最大符号值将该符号拼接再上一个找到的符号之后循环直至num为0最后得到的字符串即为num的罗马数字表示
class Solution {int[] values {1000,900,500,400,100,90,50,40,10,9,5,4,1};String[] symbols {M,CM,D,CD,C,XC,L,XL,X,IX,V,IV,I};public String intToRoman(int num) {StringBuffer s new StringBuffer();for(int i 0;i values.length;i){int value values[i];while(num value){num - value;s.append(symbols[i]);}if(num 0){break;}}return s.toString();}
}