7-2 换硬币 (20分)
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?

输入格式:
输入在一行中给出待换的零钱数额x∈(8,100)。

输出格式:
要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。

输入样例:
13
输出样例:
fen5:2, fen2:1, fen1:1, total:4
fen5:1, fen2:3, fen1:2, total:6
fen5:1, fen2:2, fen1:4, total:7
fen5:1, fen2:1, fen1:6, total:8
count = 4

#include <stdio.h>
#include <math.h>int main()
{int i,j,k,l,a,x,total,count1,count2,count3,remainder;scanf("%d",&x);a=x/5;i=a;l=0;          /*求出fen:5的最大值并赋给a*/while(i>0){remainder=x-5*i;        /*求出在fen:5取最大值时fen:2的最大值*/count1=remainder/2;for(j=count1;j>0;j--)     /*用循环依次从高到底进行枚举*/{count2=remainder-2*j;      /*求出在fen:2取最大值时fen:1的最大值*/for(k=count2;k>0;k--)      /*再次用循环依次从高到底进行枚举*/{if((5*i+2*j+k)==x){total=i+j+k;      /*求和计算出硬币的总数*/printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n",i,j,k,total);l++;        /*计算出分组的总数*/}}}i--;}printf("count = %d\n",l);return 0;
}

遇到这个问题思路一定要清晰,首选枚举法。然后利用循环嵌套来实现计数功能;
以上做法仅供参考,如果你有其他方法,欢迎评论区给我留言!

醉林疯的PTA 7-2 换硬币 (20分)相关推荐

  1. 习题4-5 换硬币 (20分) 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?

    习题4-5 换硬币 (20分) 将一笔零钱换成5分.2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法? 输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分 ...

  2. 习题4-5 换硬币 (20分)

    习题4-5 换硬币 (20分) 将一笔零钱换成5分.2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法? 输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分 ...

  3. pta 天梯赛 7-3 换硬币 (20 分)day4

    将一笔零钱换成5分.2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法? 输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分.2分和1分硬币的数量依次从大到 ...

  4. C语言:习题4-5 换硬币 (20分)

    将一笔零钱换成5分.2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法? 输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分.2分和1分硬币的数量依次从大到 ...

  5. 换硬币 (20 分)Java【循环】

    将一笔零钱换成5分.2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法? 输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分.2分和1分硬币的数量依次从大到 ...

  6. 习题4-5 换硬币 (20 分)

    将一笔零钱换成5分.2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法? 输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分.2分和1分硬币的数量依次从大到 ...

  7. 习题4-5 换硬币 (20分) 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?

    输入格式: 输入在一行中给出待换的零钱数额x∈(8,100). 输出格式: 要求按5分.2分和1分硬币的数量依次从大到小的顺序,输出各种换法.每行输出一种换法,格式为:"fen5:5分硬币数 ...

  8. PTA 7-9 叶节点求和 (20 分)

    PTA 7-9 叶节点求和 (20 分) 对给定的有N个节点(N>=0)的二叉树,求叶节点元素之和 没有当过父节点的节点都是叶子节点 #include <iostream> #inc ...

  9. C++学习之路 | PTA乙级—— 1013 数素数 (20分)(精简)

    1013 数素数 (20分) 令 P ​i ​​ 表示第 i 个素数.现任给两个正整数 M≤N≤10 ​4 ​​ ,请输出 P ​M ​​ 到 P ​N ​​ 的所有素数. 输入格式: 输入在一行中给 ...

最新文章

  1. 【转】常见浏览器兼容性问题与解决方案css篇
  2. 嵌入式笔录(3)-电容,频率与幅度基础
  3. 【学习记录】网络层——IP数据报(格式与分片)
  4. Linux系统的基本安装
  5. 大数据之-Hadoop环境搭建_hadoop官网手册---大数据之hadoop工作笔记0020
  6. RS232和RS485区别
  7. C#中不失真生成缩略图
  8. 二分法查找是基于有序_【二分查找】May1th “First Bad Version (Python3)”
  9. 在NodeJS中使用Redis缓存数据
  10. c++ primer plus 之函数及函数指针
  11. 解决 CondaHTTPError: HTTP 404 NOT FOUND for url 和 InvalidVersionSpecError: Invalid version spec: =2.7
  12. VB.net:VB编程语言/VB.net语言编程的简介、IDE安装、学习路线(几十项案例代码实现)之详细攻略
  13. 尚硅谷kubernates学习笔记 1
  14. java程序的开发流程
  15. (17)DialogBox和DialogBoxParam函数
  16. HUSTOJ SPJ 示例
  17. UVM中的factory机制
  18. 白话 P-value 这个再通俗不过了~
  19. 苹果wifi网速慢怎么办_家里网速慢如何解决 提高WiFi网速方法【详解】
  20. 新浪微博授权登录 文件不存在C8998

热门文章

  1. python实现抢票github_面向回家编程!GitHub标星两万的”Python抢票教程”,我们先帮你跑了一遍...
  2. 设计模式学习之访问者模式
  3. php对接一网通,Android招行一网通对接
  4. kubeadm部署k8s集群
  5. HDU 1847 Good Luck in CET-4 Everybody!(巴什博弈论)
  6. 旅行青蛙(旅かえる)的最全攻略(不懂日语的可以看看)
  7. 8个最好用的H5页面制作工具
  8. 如何科学管理你的密码
  9. 「上帝粒子」发现10周年
  10. xxl-job集成钉钉群告警