当前位置: 首页 > news >正文

[循环枚举]换零钱

换零钱

题目描述

现有m 张面值100元,n 张面值50元的人民币,想换成面值为1元,2元,5元三种面值的人民币,兑换的结果必须含有1元,2元和5元这三种面值人民币(即,三种币值中,任意一种不能为0 张),计算有多少种换法,输出其值。

关于输入

m 和 n 在1行内输入,以空格间隔。

关于输出

有多少种换法

例子输入
0 1
例子输出
106
提示信息

程序不优化,可能会超时(Time out)

解题分析

定义变量需要时间,每一步的计算也需要时间,所以尽可能地减少计算。

程序采用了暴力枚举的方式来解决这个问题。首先,我计算了可以兑换的最大数量的1元、2元和5元的人民币。然后,我遍历了所有可能的组合,检查每一种组合是否满足总金额不超过原始的金额。

具体来说,我的程序首先读取输入的面值数量,然后计算出可以兑换的最大数量的1元、2元和5元的人民币。然后,它使用两个嵌套循环遍历所有可能的1元和2元的数量。对于每种组合,它检查5元的数量是否满足总金额不超过原始的金额。如果满足,它就增加换法的计数。最后,它输出总的换法数量。

这个解决方案的主要优点是它的简单和直观。然而,它的主要缺点是它的效率很低,特别是当面值数量非常大时。因为它需要遍历所有可能的组合,所以它的时间复杂度是O(n^2),其中n是面值数量。这可能会导致程序在处理大规模数据时超时。

代码实现
#include <stdio.h>
#include <math.h>
int a1,a2,a3;
int main(void) { int m,n; scanf("%d%d",&m,&n);int count=0;a1=(m*20+n*10-1),a2=(m*50+n*25-3),a3=(100*m+50*n-1);for(int i=1;i<=a1;i++)for(int j=1;j<=a2;j++){if(5*i+2*j<=a3){count++;}}printf("%d\n",count);return 0;
}

相关文章:

  • office办公技能|ppt插件使用
  • 总结:服务器批量处理http请求的大致流程
  • 代码序随想录二刷 |二叉树 | 二叉树的层序遍历II
  • 中科院分区和JCR分区有什么区别
  • 【面试常考题目】五种方法解决“如何在n个无序数组中找出它的中位数(java)”问题
  • 【langchain实战】开源项目-RasaGPT
  • 微信小程序 纯css画仪表盘
  • 了解一下分治算法
  • SAP-PP:超实用的表PP顾问必备
  • vue3路由跳转页面到顶部,Stable Diffusion使用ControlNet
  • Qt槽函数不响应不执行的一种原因:ui提升导致重名
  • 【MySQL语言汇总[DQL,DDL,DCL,DML]以及使用python连接数据库进行其他操作】
  • watch
  • SQL命令---创建数据库
  • Nginx缓存及HTTPS配置小记
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • centos安装java运行环境jdk+tomcat
  • jquery cookie
  • Lucene解析 - 基本概念
  • Markdown 语法简单说明
  • node学习系列之简单文件上传
  • RxJS 实现摩斯密码(Morse) 【内附脑图】
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • uni-app项目数字滚动
  • vue学习系列(二)vue-cli
  • 对象管理器(defineProperty)学习笔记
  • 个人博客开发系列:评论功能之GitHub账号OAuth授权
  • 前端js -- this指向总结。
  • 前端技术周刊 2019-02-11 Serverless
  • 全栈开发——Linux
  • gunicorn工作原理
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • #NOIP 2014# day.2 T2 寻找道路
  • (C语言)二分查找 超详细
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (pojstep1.3.1)1017(构造法模拟)
  • (超详细)语音信号处理之特征提取
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (五)MySQL的备份及恢复
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • .gitattributes 文件
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .NET连接数据库方式
  • .NET委托:一个关于C#的睡前故事
  • [ 常用工具篇 ] AntSword 蚁剑安装及使用详解
  • [2018/11/18] Java数据结构(2) 简单排序 冒泡排序 选择排序 插入排序
  • [Angular 基础] - 表单:响应式表单
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)
  • [codevs] 1029 遍历问题
  • [Django ]Django 的数据库操作
  • [Java基础] Java中List.remove报错UnsupportedOperationException
  • [php] 数据结构算法(PHP描述) 快速排序 quick sort