【题目描述】 罗马数字包含以下七种字符: I , V , X , L , C , D 和 M 。 【示例】 【代码】liweiwei1419 impor
【题目描述】
罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。
【示例】
【代码】liweiwei1419
import java.
awt.
image.
ImageProducer;
import java.
util.
*;
import java.
util.
stream.
Collectors;
// 2022-12-19class Solution {
public String intToRoman(
int num) {
String res = "";
// 把阿拉伯数字与罗马数字可能出现的所有情况和对应关系,放在两个数组中,并且按照阿拉伯数字的大小降序排列 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"};
StringBuilder sb = new StringBuilder();
int index = 0;
while (
index < 13) {
while (
num >= nums[
index]) {
sb.
append(
romans[
index]);
num -= nums[
index]; }
index++; }
res = sb.
toString();
return res; }}
public class Main{
public static void main(
String[]
args) {
int arr = 58;
new Solution().
intToRoman(
arr);
// 输出: LVIII }}
【代码】官方