Part I ( points)
“找硬币问题”:设有3种硬币,面值分别为25分,10分和1分。编写程序,输入n(分钱),用穷举法或者回溯法求解,求最少需要找多少个硬币。
Part I ( points)
“找硬币问题”:设有3种硬币,面值分别为25分,10分和1分。编写程序,输入n(分钱),用穷举法或者回溯法求解,求最少需要找多少个硬币。
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Coin {
public static int getNums(int n){
List<Integer> list = new ArrayList<Integer>();
for(int i=0;i<1000;i++){
for(int j=0; j < 1000; j++) {
for(int z=0; z < 1000; z++) {
if(25*i+10*j+z==n){
list.add(i+j+z);
}
}
}
}
Collections.sort(list);
return list.get(0);
}
public static void main(String[] args) {
int a = getNums(34);
System.out.println("--->" + a);
}
}
java版穷举法