1、暴力破解法
使用四个for循环,但是如果n很大的话,就会超时

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int[] array = new int[]{1,2,5,10};System.out.println(myCount(n, array));}public static int myCount(int n,int[] array){int count=0;for (int i = 0; i <= n; i++) {for (int j = 0; j <= n; j++) {for (int k = 0; k <= n; k++) {for (int l = 0; l <= n; l++) {if (array[0]*l+ array[1]*k+array[2]*j+array[3]*i== n) {count++;}}}}}return count;}
}

2、递归法,如果n很大的话,就会超时

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int[] array = new int[]{1,2,5,10};System.out.println(myCount(n, 3));}private static int myCount(int n, int k) {int[] array = new int[]{1,2,5,10};if(n<0){return 0;}if(n == 0){return 1;}int count = 0;for (int i = 0; k>=0 && i*array[k]<=n; i++) {count +=myCount(n-i*array[k],k-1);}return count;}
}

3、运行速度很快,解题的不二之选

import java.util.Scanner;
public class Main {public static void main(String args[]) {Scanner scanner=new Scanner(System.in);int n=scanner.nextInt();int coins[]= {1,2,5,10};int [] array=new int[100001];//这里定义一个100001大小的数组,用来存放组成0-100000的方法数array[0]=1;for(int i=0;i<4;i++) {for(int j=coins[i];j<=n;j++) {array[j]=(array[j]+array[j-coins[i]])%1000000007;/*第一次循环,i=0,coins[i]=1;这里面求的是,只使用1组成0-100000的方法数第二次循环,这里面求的是,只使用1,2组成0-100000的方法数第三次循环,这里面求的是,只使用1,2,5组成0-100000的方法数第四次循环,这里面求的是,只使用1,2,5,10组成0-100000的方法数*/}}System.out.println(array[n]);}
}

最上面的两种方法,相对比较简单,就不解释了,下面我来重点讲解一下第三种方法!!!
首先呢,我们来看一个表格,解释一下,第一行表示的是想要的钱数,第一列表示组成钱数所使用的的硬币的种类

图片太小,放大了看,没看懂的话,欢迎评论询问

有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱(n <= 100000),有多少中组合可以组成n分钱?相关推荐

  1. 创新工场笔试题----有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱,求有多少种组合可以组合成n分钱?

    [题目]有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱,求有多少种组合可以组合成n分钱? 代码如下 void Combination(int *a,int index,int n,v ...

  2. 有1分,2分,5分,10分四种硬币,每种硬币数量无限,给定n分钱,求有多少种组合可以组合成n分钱?

    使用回溯法 int countQ = 0; int Target = 0;int coin[4] = {1,2,5,10}; int total=0; vector<int> soluti ...

  3. 10-278 查询所授每门课程平均成绩均在70分以上的教师(MSSQL) (10 分)

    查询所授每门课程的平均成绩均在70分以上( 含70分)的教师. 提示:MSSQLServer 评测SQL语句. 表结构: 请在这里写定义表结构的SQL语句.例如: -- 课程表 CREATE TABL ...

  4. 用一元五角兑换5分、2分、1分的硬币(每种都要有)共100枚,共一共有多少种方案?

    #include<stdio.h> int main() {int i,j,k;int count=0;for(i=1;i<30;i++){for(j=1;j<75;j++){ ...

  5. 10个台阶,每次只能上1个或者2个,一共有多少种走法

    思路来得太慢,好想拿小锤锤捶自己哟~~~ 第一种,递归思路. 如果你上10个台阶,可以分解成下面两种情况: ● 上9个台阶,最后上1个台阶.假设这种情况下,上前面9个台阶的方法数为m. ● 上8个台阶 ...

  6. 6-1 jmu-python-组合数据类型-1.计算坐标点欧氏距离 (10 分)

    文章目录 **6-1 jmu-python-组合数据类型-1.计算坐标点欧氏距离 (10 分)** **6-2 jmu-python-函数-找钱 (10 分)** **6-3 jmu-java& ...

  7. 直通车上10分 易如反掌

    这个上10分计划 我就没有去管它 一开始设置好就可以 关于直通车上10分我开得还是比较多的 所以轻车熟路 开始设置好就没有去管他 地域省份我直接全开 不是那种通过控制展现来上分 控制展现短时间内是可以 ...

  8. 7-1 有重复元素的全排列 (10 分)

    7-1 有重复元素的全排列 (10 分) 计算给定的n个数有多少种排列方式,即求全排列(可能出现重复的元素) 输入格式: 第一行输入数字的数量n(n>2),第二行给出每一个数字. 输出格式: 一 ...

  9. 7-7 有重复元素的全排列 (10 分)(set容器做法思路加详解)

    一:题目 计算给定的n个数有多少种排列方式,即求全排列(可能出现重复的元素) 输入格式: 第一行输入数字的数量n(n>2),第二行给出每一个数字. 输出格式: 一个数字,不同排列方式的数量. 输 ...

  10. 中考计算机加试及格多少分,中考满分多少,各科多少分

    中考满分多少,各科多少分2020-07-20 14:01:36文/董玉莹 2020年全国中考已经结束了大半,本文整理了各省市中考总分,欢迎阅读. 北京中考总分 中考文化课总分为540分. 语文试卷总分 ...

最新文章

  1. rocksdb报错解决:librocksdb.a(format.o): In function `Zlib_Uncompress':
  2. css设置元素继承父元素宽度_前端新手必知-5种新型的CSS长度单位
  3. 根据鼠标点击位置获取DataGridView的选择行号。
  4. 少年郎,你需要封装好的ViewPager工具类
  5. 超级计算机性能调查,调查:多数超级计算机使用Linux操作系统
  6. hdu1521(指数母函数)
  7. php 关闭oracle,CSS_ORACLE启动和关闭实例,实例启动和关闭:一.数 - phpStudy
  8. .net 怎么使用github_如何正确的使用ncnn的Extractor
  9. php curl 采集文件,curl获取远程文件内容
  10. ajaxfileupload 返回值_ajaxFileUpload上传文件返回json无法解析
  11. UIDeviceOrientation 和 UIInterfaceOrientation 设备旋转的用法 (实例)
  12. 解决mac管理员变成普通成员
  13. Golang 入门系列(十一)Go语言实现webapi
  14. 二十个方法鼓励自己最有效
  15. 淘宝质量属性场景分析
  16. 使用telnet登录varnish3.x管理缓存时认证问题
  17. 十分钟走进大数据世界
  18. 华为开通api服务_入冬第一场技术盛宴!DevRun开发者沙龙华为云武汉专场举办
  19. 3D屏保:魔方2.0版本
  20. UnitedPlugins发布终极Bass效果器:QuickBass

热门文章

  1. 开源众包移动端可以发包啦
  2. 观察者模式--微信公众号文章的推送
  3. H5换起微信小程序支付
  4. 计算机按键模块,计算器键盘-TM1650/AIP650
  5. webmagic爬取网页
  6. HTML三种引入样式的方式
  7. 暗黑下品中文图文全集,mo下载。没听说过的就别进了,不是爱好者打不开
  8. 【NISP一级】2.4 网络安全新技术
  9. 防患未然 | AIRIOT城市管廊智能运维解决方案
  10. laravel 服务容器,容器概念