2018蓝桥杯校选题目1 换钱问题

x星球的钞票的面额只有:100元,5元,2元,1元,共4种。
小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱。
小明有点强迫症,他坚持要求200元换出的零钞中2元的张数刚好是1元的张数的10倍,
剩下的当然都是5元面额的。
银行的工作人员有点为难,你能帮助算出:在满足小明要求的前提下,最少要换给他多少张钞票吗?
(5元,2元,1元面额的必须都有,不能是0)

注意,需要提交的是一个整数,不要填写任何多余的内容。

#include <stdio.h>

void main()
{
	int num = 0,i;
	for (i = 21; i < 200; i+=21)
	{
		num = 11 * i / 21;
		if ((200 - i) % 5 == 0)
			break;
	}
	num += (200 - i) / 5;
	printf("最少要%d张",num);
}

其实也可以靠手算

有题目可以找到 1元和2元的比例是 1:10

那么1元和2元可以化成一份21元,而这一份就有11张

因为要和5整除,所以可以得出公式

(总钱数-21*n)==0

因为是要最少,那么5元越多越好

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值