问题描述
思路
贪心算法实现
代码实现
public class ToLuoMa {
private boolean resultTrue=true;
public boolean getResultTrue(){
return this.resultTrue;
}
public String solution(int num){
if(num>4000){resultTrue=false;return "0";}
int[] el={1000,900,500,400,100,90,50,40,10,9,5,4,1};
String[] elString={"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
StringBuffer sb=new StringBuffer();
int index=0;//标记贪心到哪个数
while(num!=0){
while(num>=el[index]){
num-=el[index];
sb.append(elString[index]);
}
index++;
}
return sb.toString();
}
}