Java codepublic class PayType {

private static int count=0;

private static int coins[]={1,2,5};

public static void main(String[] args) {

int amount=1*100;

int coinsCount[]=new int[coins.length];

//先每种至少一张

for(int i=coinsCount.length-1;i>=0;i--)

{

amount-=coins[i];

coinsCount[i]=1;

}

//从最大开始付

pay(amount,coinsCount.length-1,coinsCount);

System.out.println("count:"+count);

}

private static void print(int coinsCount[])

{

count++;

String str="";

int total=0;

for(int i=coinsCount.length-1;i>=0;i--)

{

if(i==coinsCount.length-1)

str+=coins[i]+"*"+coinsCount[i];

else

str+="+"+coins[i]+"*"+coinsCount[i];

total+=coins[i]*coinsCount[i];

}

System.out.println(str+"="+total);

}

private static void pay(int amount,int coinIdx,int srcCoinsCount[])

{

int coin=coins[coinIdx];

int[] coinsCount=new int[srcCoinsCount.length];

for(int i=0;i

{

coinsCount[i]=srcCoinsCount[i];

}

//如果是最小一种

if(coinIdx==0)

{

//整除,则合适

if(amount%coin==0)

{

coinsCount[coinIdx]+=amount/coin;

print(coinsCount);

}

return;

}

if(amount>=coin)

{

//用下一种面值付

pay(amount,coinIdx-1,coinsCount);

//继续用当前面值付

coinsCount[coinIdx]++;

amount-=coin;

pay(amount,coinIdx,coinsCount);

}

//不够,则用下一种面值付

else

{

pay(amount,coinIdx-1,coinsCount);

}

}

}

java用一张一元票换一分,把一元纸币换成一分、二分、五分硬币(每种至少一枚),有多少种换法?使用递归...相关推荐

  1. java硬币兑换_java程序题:把一元钞票换成一分、二分、五分硬币(每种至少一枚),有哪些种换法...

    满意答案 alexjia301 2015.01.15 采纳率:42%    等级:6 已帮助:257人 123456789101112131415161718192021222324252627/** ...

  2. 【Java】将一元换成5分,2分和1分的硬币,有多少种换法

    #换硬币 将一元换成5分,2分和1分的硬币,有多少种换法 public class Coin {public static void main(String[] args) {// TODO 自动生成 ...

  3. JAVA编程_05_超市奖票兑换

    某家超市有一种促销手段,购买金额超过一定金额就给一张随机编号奖票.编号是一个1到100之间的数字.当收集到连续编号的三张贴花时,就可以换一个小礼物.兑换完礼物后,该奖票就作废. 小明经常去某家超市购物 ...

  4. Java线程同步-模拟买票

    文章首发于 2020-11-29 知乎文章:Java线程同步-模拟买票 作者:落雨湿红尘(也是我o) 01 导语 本文使用JAVA代码模拟买票场景下的业务交互,通过示例讲解线程的初始化.线程同步等ja ...

  5. java实现多张条码转成pdf文件

    目录 需求 管理后台通过查询并生成多张条码并一起打印出来 思路 思路一 思路二 代码编写 maven pom文件 方法一 步骤一:创建barcode 条码文件 步骤二:将创建的barcode 条码文件 ...

  6. mysql数据库访问300ms以上_[Java教程]一张900w的数据表,16s执行的SQL优化到300ms?...

    [Java教程]一张900w的数据表,16s执行的SQL优化到300ms? 0 2020-11-20 16:00:16 一,前言 证实 有一张财务流水表,未分库分表,目前的数据量为9555695,分页 ...

  7. 既然是青春,怎么能错过?唯一理由只缺1张免费票!

    很少有一部电影像魔兽这般 积累了玩家长达10年的等待 然而正当我们满怀期待的时候 试映的影评人评分却纷纷跳水,比如: Metacritic上仅31分的满意度 烂番茄上18%的新鲜度 歪果仁也纷纷开启了 ...

  8. 精品基于java开发的航空订票系统SSM

    <基于java开发的航空订票系统>该项目含有源码.论文等资料.配套开发软件.软件安装教程.项目发布教程等 使用技术: 开发语言:Java 框架:ssm 技术:JSP JDK版本:JDK1. ...

  9. 基于JAVA Web的航空订票系统

    基于JAVA Web的航空订票系统 开发语言:JSP,JAVAweb 开发平台:eclipse; 数据库:MYSQL: 系统分为前台和后端: 前台界面图: 登录界面: 主界面图: 后端界面 登录: 后 ...

最新文章

  1. ThinkPHP5.0中Redis的使用和封装(原创)
  2. java 鼠标 停止工作原理,java系统级的键盘和鼠标状态
  3. 用 Flask 来写个轻博客 (7) — (M)VC_models 的关系(many to many)
  4. 【Android 插件化】Hook 插件化框架总结 ( 插件包管理 | Hook Activity 启动流程 | Hook 插件包资源加载 ) ★★★
  5. java set第n位_数据结构与算法——常用数据结构及其Java实现
  6. 半夜闲的真是蛋疼。。。决定写个小博文
  7. 2种图像增强方法:图像点运算和图像灰度化处理
  8. UVA - 207 PGA Tour Prize Money
  9. c# lock的使用及注意事项
  10. python如何调整图片大小_Python实现图片尺寸缩放脚本
  11. 高防CDN为什么会被TTCDN取代的?
  12. 情话套路大全,哈哈哈~~~
  13. appuim框架二次封装-UI自动化-自整理亲自实践
  14. linux 445端口连不上,Linux配置防火墙,开启访问端口
  15. 下载了突袭:资源战争
  16. 适配器模式【Adapter Pattern】
  17. 荣欣Linux运维+Oracle DBA实战训练
  18. 让windows 2008 也netmeeting
  19. 计算机作业评价表,【作业检查记录评语】_教导处作业检查评语,教导处作业检查记录...
  20. 05. HAXM is not installed

热门文章

  1. ADONIS、ANOSIM、Mangel_test、MRPP
  2. Error querying database. Cause: java.sql.SQLException
  3. python五边形的代码_如何使用pythonttkinter画布中的create_line创建五边形和六边形?...
  4. 互联网人如何拓展自己的人脉
  5. NAS 详细搭建方案 -添加磁盘
  6. CTP: SimNow , 策略模拟交易利器,赞!
  7. 中外合作计算机专业的大学排名,美国计算机专业大学排名
  8. java中的push方法_Java ArrayDeque push()方法与示例
  9. STM32 Keil快速新建工程
  10. 无胁科技-TVD每日漏洞情报-2022-11-24