c 语言的超级问题

来源:百度知道 编辑:UC知道 时间:2024/05/10 18:54:27
我请教大家一个问题:(找零钱)说是现在面值不同的A1,A2,。。。,Ak,现要取N元,此时要求找出一种兑换方法,使你得到的钞票的数量最少?
这个问题必须用C语言来做!!
不允许用其他的语言来做!!

你先设k个变量,使A1*X1+......AK*XK=N;把答案做成一个循环,先设第一个和最小为MIN,再和下面的答案比较大小,每次遇到比MIN小的,就存到MIN里去,最后得到的就是最少次数

给你个思路,用枚举的方法,一个变量保存一次枚举成功后所需要的钞票数量,不断比较,若新的枚举方法所需数量比其大则舍去,比起小则保存。

我觉得也有点象背包问题算法