最少硬币问题(无穷硬币)

简介: 1 /*贪心可能导致无解; 2 硬币系统是10,7,5,1元,那么12元用贪心法得到的硬币数为3,而最少硬币数是2。 3 对于此题,可以举个例子: 4 若有1,5,7,10这四种货币,则易知 5 1=1 6 2=1+1 7 3=1+1+1 8 …… 9 6=5+1 10 那么推下去可知 11 表示12这个面值需要的货币数,等于表示11或7或5或2需要的货币数+1。
 1 /*贪心可能导致无解;
 2  硬币系统是10,7,5,1元,那么12元用贪心法得到的硬币数为3,而最少硬币数是2。
 3  对于此题,可以举个例子:
 4     若有1,5,7,10这四种货币,则易知
 5     1=1
 6     2=1+1
 7     3=1+1+1
 8     ……
 9     6=5+1
10  那么推下去可知
11          表示12这个面值需要的货币数,等于表示11或7或5或2需要的货币数+1。
12          那么题中若要求表示12所需用的最小货币数,只需寻找表示11或7或5或2需要的货币数中的最小值。
13  
14  */
15  
16  //硬币数无穷 
17  #include <iostream>
18  #include <cstring>
19  using namespace std;
20  
21  int coinValue[] = { 25, 21, 10, 5, 1 }; //硬币系统
22  int money = 63;//钱数
23  int coinUsed[100];//每种数量的钱币所需最少硬币数 
24  
25  void solve()
26  {
27      int i,j,k;
28      int len = sizeof(coinValue)/sizeof(coinValue[0]);
29      memset(coinUsed,0,sizeof(coinUsed));
30      
31      for(i=1; i<=money; i++)//递推 
32      {
33          int minCoins = i/coinValue[len-1];
34          int temp = 0;
35          for(j=0; j<len; j++)
36          {
37              if(i>=coinValue[j])
38              {
39                  temp = coinUsed[i - coinValue[j]] + 1; 
40                  /*
41                  在temp赋初值为0时,下面的if不能和外层if并列,改为1貌似对了
42                  money=1时前几次 内层for未执行,此时 minCoins变为0了,到内层最后temp变为1,不过此时 minCoins还是0,所以就错了 
43                  */
44                  if(minCoins>temp)
45                      minCoins = temp;                    
46              } 
47              
48          }
49          coinUsed[i] = minCoins;
50      }
51  }
52   
53  int main()
54  {
55      int i,j,k;
56      solve();
57      cout<<coinUsed[money]<<endl;
58      while(1);
59      return 0;
60  }

 

目录
相关文章
|
1天前
|
云安全 人工智能 运维
阿里云SecOps Agent,全新安全跨产品执行体验
自然语言驱动 云安全中心/WAF/CFW/ 等多款安全产品联动
1570 1
|
12天前
|
缓存 测试技术 API
Qwen 3.7 Plus 与 Max 实测:性价比与多模态能力差异解析(2026)
2026 年 6 月 1 日,阿里悄无声息地发布了 Qwen 3.7 Plus,距 Qwen 3.7 Max 上线刚好 11 天。同样的 1M 上下文,同样的 35 小时自治上限。但价格才是头条:Plus 是 0.40/M输入,Max是 2.50/M——便宜约 6 倍——并且还能看图、看视频。Vision Arena 上 Plus 已经排到 #16。所以这周真正值得讨论的问题不是”要不要为视觉能力买单”,而是”Max 凭什么用 6 倍价格换来 2 个百分点的 benchmark 领先”。
|
13天前
|
JavaScript 定位技术 API
CodeGraph 爆火:编程 Agent 需要的不是更多上下文,而是一张提前画好的代码地图
CodeGraph 是一款爆火的本地代码智能工具,通过 tree-sitter 解析 AST 构建结构化知识图谱(存于 SQLite),为编程 Agent 提前生成“代码地图”。它显著降低 Agent 在中大型项目中的探索成本——实测工具调用减少71%、Token 降57%、速度提升46%,支持19+语言及主流框架路由识别,完全离线、无需 API Key。
856 11
CodeGraph 爆火:编程 Agent 需要的不是更多上下文,而是一张提前画好的代码地图
|
13天前
|
人工智能 运维 JavaScript
阿里云Qoder CN(原通义灵码)全解析 产品形态、版本划分与技术适配说明
在AI辅助开发与智能办公工具持续普及的当下,阿里云旗下原通义灵码正式更名为Qoder CN,同时延伸出QoderWork CN、Qoder CN CLI、Qoder CN Mobile等多款配套产品,形成覆盖代码开发、日常办公、终端交互、移动端使用的完整工具矩阵。Qoder CN核心定位为AI智能编码助手,深度适配主流代码编辑器、集成开发环境以及终端场景;QoderWork CN则偏向桌面端综合办公辅助,二者面向不同使用场景,划分了多个版本档位,搭配差异化资源配额、功能权限与计费规则,同时兼容多款主流大模型。
895 8
|
1天前
|
机器学习/深度学习 人工智能 调度
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
HappyHorse 1.1 是新一代视频生成大模型,全面升级动态表现力、角色一致性、指令遵循、视觉质感与音画协同能力。支持I2V/T2V/R2V三类生成,适配短剧、电商广告、品牌营销等场景,提供高质、流畅、可控的AI视频生产力。
393 2
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
|
13天前
|
JSON 缓存 安全
通过 CC Switch 本地路由让 Codex CLI 接入 DeepSeek 等第三方模型
CC Switch 通过本地路由(`127.0.0.1:15721`)实现协议转换:将 Codex 的 Responses API 请求自动映射为 DeepSeek 等厂商的 Chat Completions 接口,兼容流式响应与工具调用,无需修改 Codex 源码,安全隔离 API Key。(239字)
2465 7
通过 CC Switch 本地路由让 Codex CLI 接入 DeepSeek 等第三方模型
|
13天前
|
存储 安全 Java
AgentScope Java 2.0:打造分布式、企业级智能体底座
AgentScope 2.0 面向分布式部署、稳定运行、权限安全等企业级需求全面升级,打造支持多租户隔离与长期稳定运行的企业级智能体底座。