啊我这个弱鸡,一到这种没见过的题目就GG
class Solution {
public String intToRoman(int num) {
int thousands,ones,tens,hundreds;
String res="";
thousands=num/1000;
ones=num%10;
hundreds=num/100-10*thousands;
tens=num%100/10;
if(thousands!=0){
for(int i=0;i<thousands;i++){
res+="M";
}
}
res+=func(hundreds,"M","D","C");
res+=func(tens,"C","L","X");
res+=func(ones,"X","V","I");
return res;
}
private String func(int number, String tens, String fives, String ones){
String temp="";
if(number==9){
temp=ones+tens;
}
else if(number==0){
return temp;
}
else if(number==4){
temp=ones+fives;
}
else if(number<4){
for(int i=0;i<number;i++){
temp+=ones;
}
}
else{
if(number>=5){
temp+=fives;
}
for(int i=0;i<number%5;i++){
temp+=ones;
}
}
return temp;
}
}