0
点赞
收藏
分享

微信扫一扫

【蓝桥杯_真题演练】换零钞(C++_遍历)


题目

x星球的钞票的面额只有:100元,5元,2元,1元,共4种。
小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱。
小明有点强迫症,他坚持要求200元换出的零钞中2元的张数刚好是1元的张数的10倍,
剩下的当然都是5元面额的。

银行的工作人员有点为难,你能帮助算出:在满足小明要求的前提下,最少要换给他多少张钞票吗?
(5元,2元,1元面额的必须都有,不能是0)

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

题解

#include<bits/stdc++.h>
using namespace std;
int x1, x2, x5;
int main()
{
	int sum = 100, n = 2, res=0x3f3f3f;
	int res1, res2, res5;
	for (int i = 1; i < 200; i++) {
		x1 = i;
		x2 = i * 10;
		int temp = x1 + x2 * 2;
		if (temp > 200)
			break;
		if ((200 - temp) % 5 == 0 && abs(100 - temp) % 5 == 0) {
			if (res > (x1 + x2 + (200 - temp) / 5)) {
				res = x1 + x2 + (200 - temp) / 5;
				res1 = x1;
				res2 = x2;
				res5 = (200 - temp) / 5;
			}
		}
	}
	cout << res1 << endl;
	cout << res2 << endl;
	cout << res5 << endl;
	cout << res;
	return 0;
}


举报

相关推荐

0 条评论