Leetcode面试题 08.11. 硬币 题目:

硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007)

示例1:

输入: n = 5
输出: 2
解释: 有两种方式可以凑成总金额:
5=5
5=1+1+1+1+1

示例2:

输入: n = 10
输出: 4
解释: 有四种方式可以凑成总金额:
10=10
10=5+5
10=5+1+1+1+1+1
10=1+1+1+1+1+1+1+1+1+1

思路:

先遍历硬币,保证在考虑一枚硬币的情况时,没有较大的硬币影响,这样,最终每种组合情况,都是以硬币的面额大小非递减组合。保证了同样的情况,调换顺序后重复计算的情况。
举个例子,当n为6时:
coin = 1:
前面5种情况数:num[1,5] = [1,1,1,1,1];

num[6] += (num[6 - coin] => num[5] => 1);
即拿到coin(1)的情况有一种 :
coin(1,1,1,1,1) + coin(1);

coin = 5:
前面5种情况数:num[1,5] = [1,1,1,1,2];

num[6] += (num[6 - coin] => num[1] => 1);
即拿到coin(5)的情况有一种:
coin(1) + coin(5);

可以得到方程num[i] += num[i - coin];

Java AC代码:

public class Leetcode面试题08_11 {static int waysToChange(int n) {int[] num = new int[n + 1];int[] coins = new int[]{1,5,10,25};num[0] = 1;for(int coin : coins) {for(int i = coin; i <= n; i++) {num[i] = (num[i] + num[i - coin]) % 1000000007;}}return num[n];}public static void main(String[] args) {System.out.println(waysToChange(50));}
}

2020.4.23打卡

Rayman的绝顶之路——Leetcode每日一题打卡9相关推荐

  1. LeetCode每日一题打卡组队监督!刷题群!

    近 2000 人已经加入共同刷题啦! 群友每天都会在群里给大家讲解算法题 每周日「负雪明烛」组织直播讲题 我相信来看我博客的大部分人都是通过LeetCode刷题过来的.最近发现LeetCode中文网站 ...

  2. 关于LeetCode每日一题打卡失败的感悟

    背景 今年5月,报名参加了三叶姐的"五月打卡活动",押金29.9元,要求每天在力扣上每日一题打卡,完成则押金全退,完不成则押金不退. 事件 2022.5.10,LeetCode上的 ...

  3. Leetcode每日一题(914. 卡牌分组)

    914. 卡牌分组 题目: 给定一副牌,每张牌上都写着一个整数. 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组: 每组都有 X 张牌. 组内所有的牌上都写着相同的整数 ...

  4. LeetCode 每日一题打卡:334.递增的三元子序列

    题目 334.递增的三元子序列 题目大意 给你一个整数数组numsnumsnums ,判断这个数组中是否存在长度为333的递增子序列. 如果存在这样的三元组下标(i,j,k)(i, j, k)(i,j ...

  5. 【Leetcode 每日一题】514. 自由之路(BFS+优先队列)

    Leetcode 每日一题 题目链接:514. 自由之路 难度: 困难 解题思路: 这道题乍一看,可以选择用动态规划或者BFS来求解.本文使用BFS来进行解答.注意到题中有一个最小的到路径.所以我们可 ...

  6. leetcode每日刷题计划-简单篇day8

    leetcode每日刷题计划-简单篇day8 今天是纠结要不要新买手机的一天QAQ想了想还是算了吧,等自己赚钱买,加油 Num 70 爬楼梯 Climbing Stairs class Solutio ...

  7. Leetcode每日一题:171.excel-sheet-column-number(Excel表列序号)

    思路:就是168题的反命题,进制的方式完美解决: Leetcode每日一题:168.excel-sheet-column-title(Excel表名称) class Solution {public: ...

  8. 【LeetCode每日一题】1723. 完成所有工作的最短时间

    [LeetCode每日一题]1723. 完成所有工作的最短时间 [1] 1723. 完成所有工作的最短时间 [2] 473. 火柴拼正方形 [1] 1723. 完成所有工作的最短时间 题目: 给你一个 ...

  9. leetcode每日一题--雀巢原理;抽屉算法;Quorum机制;分布式应用

    leetcode每日一题 539. 最小时间差 示例 1: 输入:timePoints = ["23:59","00:00"] 输出:1 示例 2: 输入:ti ...

  10. LeetCode每日一题——1812. 判断国际象棋棋盘中一个格子的颜色

    LeetCode每日一题系列 题目:1812. 判断国际象棋棋盘中一个格子的颜色 难度:简单 文章目录 LeetCode每日一题系列 题目 示例 思路 题解 题目 给你一个坐标 coordinates ...

最新文章

  1. 《极乐空间》特效制作与渲染
  2. OpenFeign组件的使用(使用nacos作为服务注册中心)
  3. 如何搭建一个简易的Web框架
  4. Spring Boot实战:数据库操作
  5. 微程序相关的两个知识点
  6. OpenSSL笔记-PKCS#1和PKCS#8的区别及分别调用的API
  7. OpenCV中集成目标跟踪算法介绍
  8. 填空什么的月牙_“一( )月牙”填什么量词
  9. python操作word文档,合并
  10. 五款好用到爆炸的小众软件,用过的都好说!建议收藏转发
  11. python扇贝课程_“学点Python吧,别再这么累了。”
  12. delphi在window10下用uniGUI开发isapi的调试方法
  13. svn造成桌面图标显示问号的处理办法
  14. 电脑上总显示宽带连接服务器怎么办啊,电脑显示宽带已连接网页打不开怎么办...
  15. 夕阳无限好 只是近黄昏
  16. mysql日期以及字符串相关格式化转换
  17. Django之博客系统搭建一
  18. java 架构发展历史_Java架构发展历程与Spring简介
  19. 【问题思考总结】为什么基础解系中两个自由变量对应两个线性无关的解?
  20. Reading Ingestion —— Bigtable: A Distributed Storage System for Structured Data

热门文章

  1. dede flag标签用法
  2. 2018年大数据趋势 :人工智能... 数据分析将包含可视化模型...
  3. 数模系列(3):模糊综合评价法
  4. 题目 1341. 十三号星期五
  5. Asp.net web服务处理程序(第六篇)
  6. U盘怎么写保护、去保护?
  7. sqlmap之tamper绕过
  8. 2022-2028年全球与中国木材加工机械行业市场需求预测分析
  9. npz文件转为npy_numpy文件存取-npz,npy
  10. 腾讯QQ会员技术团队:人人都可以做深度学习应用:入门篇(下)