题目:

在英国,货币是由英镑£,便士p构成的。一共有八种钱币在流通:

1p, 2p, 5p, 10p, 20p, 50p, £1 (100p) 和 £2 (200p).

要构造£2可以用如下方法:

1£1 + 150p + 220p + 15p + 12p + 31p

允许使用任意数目的钱币,一共有多少种构造£2的方法?

原题:

In England the currency is made up of pound, £, and pence, p, and there are eight coins in general circulation:

1p, 2p, 5p, 10p, 20p, 50p, £1 (100p) and £2 (200p).

It is possible to make £2 in the following way:

1×£1 + 1×50p + 2×20p + 1×5p + 1×2p + 3×1p

How many different ways can £2 be made using any number of coins?

解题思路:

这道题算是经典的背包问题了,我一开始想到的思路就是每个数字一个for,循环个7、8次遍历之和得到答案,不过细想觉得这样的算法实在太笨,百度一下,发现大多数的技术博客都用的这种本办法,么办法,我只好再google,不得不说老外在算法确实很有效率,用的是动态规划的思想,通过大题化小求最优解

首先由于参与求和的硬币只有8个,所以只有8种情况,使用硬币1;1,2;1,2,5;。。。。总计8种,

target   1 2 3 4 5

ways     1 2 2 3 3

public class Launcher {public static void main(String[] args) {   int coins[]={1,2,5,10,20,50,100,200};int  total=200;int[] matrix = new int[total+1];matrix[0]=1; for(int i=0;i<coins.length;i++ ){for(int j=coins[i];j<matrix.length;j++){matrix[j]+=matrix[j-coins[i]];}}System.out.println(matrix[200]);         }
}

Java 欧拉工程 第三十一篇【考察英国货币面值的组合问题】相关推荐

  1. 欧拉工程第三题 找出一个合数的最大质数因子

    题目: 13195的质数因子有5,7,13和29. 600851475143的最大质数因子是多少? 解题方法: 本次求解过程使用了一个比较聪明的做法,这也是经过仔细思考之后才想出来的,当然也是受到了某 ...

  2. 关于欧拉工程的一道递推题

    今天来讲的是在欧拉工程上的一道递推题,题目描述如下链接. 题目:https://projecteuler.net/problem=492 当然,这道题在51Nod上有一个比较通用的版本,链接如下 题目 ...

  3. 欧拉工程第12题 第一个拥有超过500个约数的三角形数是多少

    题目 三角形数序列是由对自然数的连加构造而成的.所以第七个三角形数是1+2+3+4+5+6+7=281+2+3+4+5+6+7=28. 那么三角形数序列中的前十个是: 1,3,6,10,15,21,2 ...

  4. 中国纯电动车新车质量蔚来、特斯拉、欧拉列前三;长城汽车计划将P系列皮卡推向全球市场 | 美通企业日报...

    今日看点 中国纯电动车新车质量蔚来.特斯拉.欧拉列前三.J.D. Power发布中国新能源汽车体验研究.研究显示,随着新能源汽车市场发展步入快车道,新能源汽车品牌间的质量差距也在逐渐拉大,国际品牌新能 ...

  5. IntelliJ IDEA快速入门 | 第三十一篇:在IntelliJ IDEA 2020.3.3中添加Tomcat镜像并部署Web工程

    写在前面 讲完模板以后,咱们来说一下如何在IntelliJ IDEA当中去创建Java Web的工程.这里,我们主要分两种情况来讲,第一种是如何创建静态的Java Web工程,另外一种是如何创建动态的 ...

  6. java 欧拉_基于Java实现欧拉积分法

    一.欧拉积分法 欧拉积分法是数值积分方法中精度最低,但也是最容易变成实现的一种方法,其可以写成如下表达式: image.png 其微分方程可定义如下: image.png 当 image.png ,则 ...

  7. java欧拉函数_欧拉函数的编程实现

    展开全部 利用欧拉函数和它本身不同质因e68a84e8a2ad3231313335323631343130323136353331333361303032数的关系,用筛法计算出某个范围内所有数的欧拉函 ...

  8. java欧拉函数_欧拉函数(总结)

    定义 欧拉函数ϕ(n)是不超过n且和n互质的正整数的个数.欧拉函数φ(n)的作用就是转化,从而简化运算(小性质:n的所有质因子之和=eular(n)*n/2); 下面直观地看看欧拉函数: n 1 2 ...

  9. 【手写 Vue2.x 源码】第三十一篇 - diff 算法 - 比对优化(下)

    一,前言 上篇,diff 算法-比对优化(上),主要涉及以下几个点: 介绍了如何对儿子节点进行比对: 新老儿子节点可能存在的 3 种情况及代码实现: 新老节点都有儿子时,diff 的方案介绍与处理逻辑 ...

最新文章

  1. linux中html图标格式,如何在Linux上将HTML页面转化成png图片
  2. ExecutorService为创建的线程池ExecutorService pool = Executors.newFixedThreadPool(POOL_SIZE)
  3. 表表达式,Substring, CharIndex, 多行数据变同一行的用法
  4. 2层框架结构柱子间距_2分钟掌握五种不同类型的厂房结构,找厂房少绕弯!
  5. 什么是.hpp文件?
  6. ELM327 scanners work on iPhone, iPad and iPod
  7. 开发语言大爆炸的时代,究竟谁主沉浮?
  8. composer常用命令
  9. unity 常用函数
  10. mysql自左连接最大值_mysql左连接自连接例子
  11. 2021年6月20日 是第111个父亲节,祝福所有的父亲节日快乐
  12. 内核如何为系统调用的参数传递参数
  13. 睡觉的时候,程序能不能自动查 bug?
  14. MySQL-高并发优化
  15. cp105b linux 驱动,富士施乐 DocuPrint CP105b驱动
  16. FreeImage的学习资料汇总
  17. java多边形生成_如何为凹多边形生成回声路径
  18. iPhone苹果手机尺寸大小
  19. 微型计算机基础学的什么,微型计算机操作基础课的教学
  20. 计算机科学与技术有关参考文献,计算机科学与技术毕业论文参考文献示例

热门文章

  1. 美股退市,滴滴需要回归正常追赶市场发展
  2. 投票链接制作可以制作投票的软件不记名投票模板视频投票平台
  3. MFC::CListCtrl常用操作
  4. Linux——epoll
  5. python-西刺代理的获取
  6. (二)spring security:使用 OAuth2 SSO 实现单点登录
  7. 想购物去淘宝123导购看看
  8. web---盒子模型
  9. 人人都能开电商网店,但成功的却极少,我们究竟差在哪了?
  10. vue+element 输入的大于等于0