classSolution{publicStringintToRoman(int num){int[] value =newint[]{1000,900,500,400,100,90,50,40,10,9,5,4,1};String[] romans =newString[]{"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};StringBuilder sb =newStringBuilder();int index =0;while(index <13){while(num >= value[index]){//注意等号
sb.append(romans[index]);
num -= value[index];}if(num ==0){break;}
index++;}return sb.toString();}}var valueSymbols =[]struct {
value int
symbol string
}{{1000,"M"},{900,"CM"},{500,"D"},{400,"CD"},{100,"C"},{90,"XC"},{50,"L"},{40,"XL"},{10,"X"},{9,"IX"},{5,"V"},{4,"IV"},{1,"I"},}
func intToRoman(num int) string {
roman :=[]byte{}for _, vs := range valueSymbols {for num >= vs.value {
num -= vs.value
roman =append(roman, vs.symbol...)//...代表把string整个添加进去}if num ==0{break}}returnstring(roman)}