最少硬币
小明当前有三种硬币,分别为2元、5元、7元;
在硬币没有数量限制情况下,小明去新华书店买一本27元的算法宝典;
请问小明最少使用几枚硬币能买到这本书
public class A_最小硬币 {
//统计最小硬币数量,默认值1000
public static int length=1000;
public static void main(String[] args) {
f(27,0);
System.out.println(length);
}
//参数1:金额,参数2:硬币个数
//思路:统计所有能够构成金额为27的硬币个数,找最小值
public static void f(int n,int nn) {
if(n<0) {
return;
}
if(n==0) {
if(length>nn) {
length = nn;
}
return;
}
f(n-7,nn+1);
f(n-5,nn+1);
f(n-2,nn+1);
}
}