当前位置:首页 > 题解目录 > 正文内容

【题解】人民币问题

亿万年的星光5年前 (2021-03-13)题解目录20998

【题目描述】

给出任意的人民币(>10 元)的整币兑换成 5 元、2 元和 1 元币值(要求三种币值均有)的方法有多少种。

【输入描述】

输入任意的人民币(>10 元)的整币 100,50,20,10

【输出描述】

计算出兑换成 5 元、2 元和 1 元币值(要求三种币值均有)的方法有多少种

【样例输入】

50

【样例输出】

106

【数据范围】


【题目分析】

  • 首先注意一点,题目要求三种币值都必须有,当人民币是10是,方案只有(5+2*2+1)和(5+2+1*3)两种。

  • 想的简单一点就是模拟(for循环)




[参考答案]

#include<iostream>
using namespace std;
int money,sum; //钱数和总数 

int main(){
	cin>>money; 
	for(int i=1;i<money/5;i++)  //模拟5元
	{
		for(int j=1;j<money/2;j++) //模拟2元
			{
				for(int k=1;k<money/1; k++) //模拟1元 
					 if(i*5+j*2+k*1==money) //符合情况 
					 	sum++; 
			}	
	} 
	cout<<sum<<endl;
	return 0; 
}


【注】:和“画百钱买白鸡”问题是同一种类型。

    扫描二维码推送至手机访问。

    版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

    标签: for模拟
    分享给朋友:

    相关文章

    【题解】二分法查找左边界

    参考代码:# include <bits/stdc++.h> using namespace std; int a[100005];&...

    【题解】石子合并(环形)

    【题目描述】在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分。试设计出一个算法,计算出将 N 堆石子合并...

    【题解】导弹拦截

    【题目描述】某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导...

    【题解】公路乘车(动态规划)

    【题目描述】一个特别的单行街道在每公里处有一个汽车站。顾客根据他们乘坐汽车的公里使来付费。例如下表就是一个费用的单子。   没有一辆车子行驶超过10公里,一个顾客打算行驶n公里(1<...

    【题解】位数问题

    【题目描述】在所有的N位数中,有多少个数中有偶数个数字3?由于结果可能很大,你只需要输出这个答案对12345取余的值。比如:在所有的2位数字,包含0个3的数有72个,包含2个3的数有1个,共73个。(...

    【题解】放苹果(1)

    【题目描述】把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。【输入】第一行是测试数据的数目t(0≤t≤20)。以下...