文件名称:用贪心算法实现购物找零(支付+找零使用最少硬币数)
文件大小:1KB
文件格式:RAR
更新时间:2014-04-27 04:56:59
贪心算法 购物 找零
硬币找钱问题 问题描述 设有6种不同面值的硬币,各硬币的面值分别为5分,1角,2角,5角,1元,2元。现要用这些面值的硬币来购物和找钱。购物时规定了可以使用的各种面值的硬币个数。 假定商店里各面值的硬币有足够多,顾客也可用多种方式支付。在1次购物中希望使用最少硬币个数。例如,1次购物需要付款0.55元,没有5角的硬币,只好用2*20+10+5共4枚硬币来付款。如果付出1元,找回4角5分,同样需要4枚硬币。但是如果付出1.05元(1枚1元和1枚5分),找回5角,只需要3枚硬币。这个方案用的硬币个数最少。 您的任务:对于给定的各种面值的硬币个数和付款金额,计算使用硬币个数最少的交易方案。 输入 有若干行测试数据。每一行有6个整数a5、a4、a3、a2、a1、a0和1个有2位小数的实数money,分别表示5分,1角,2角,5角,1元,2元面值的硬币个数和付款金额,money<=1000。文件以6个0结束(不必处理)。 输出 对每一行测试数据,一行输出最少硬币个数。如果不可能完成交易,则输出“impossible”。 输入样例 2 4 2 2 1 0 0.95 2 4 2 0 1 0 0.55 0 0 0 0 0 0 输出样例 2 3
【文件预览】:
input.txt
4-3.cpp