当前位置: 首页 > news >正文

少儿编程加盟费一般多少钱系统优化大师下载

少儿编程加盟费一般多少钱,系统优化大师下载,网站首页怎样排版,做网站是先做后台还是前端LeetCode 322. 零钱兑换 题目 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回-1。 你可以认为每…

LeetCode 322. 零钱兑换

题目

给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。
计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回-1。
你可以认为每种硬币的数量是无限的。
示例:
输入:coins = [1, 2, 5], amount = 11
输出:3
解释:11 = 5 + 5 + 1

思路

思路:动态规划,dp[]数组表示组成金额i需要的最少硬币个数

  1. 数组初始化:Arrays.fill(dp, amount + 1); 相当于给一个最大值,便于后面比较得到最少硬币枚数。dp[0]=0,组成金额0只需要0枚硬币
  2. 嵌套循环:
    I. 第一个循环for(int i=1; i<amount+1; i++)从金额1~金额i,最少的硬币数量
    II. 第二个循环for (int coin:coins),假设使用该面额的硬币,能否组成目标金额。里面的条件是if(coin <= i),因为如果coin>i那么这枚硬币肯定用不上
    在if语句中,dp[i]=Math.min(dp[i-coin]+1,dp[i]),这个递推式的意思是说:如果使用coin的话,此时硬币数量就=1+金额(i-coin)的最少硬币数量,看看dp[i]本身和dp[i-coin]+1哪个更小。
  3. return dp[amount] > amount ? -1 : dp[amount]; 也就是如果dp[amount]没有变化,那就表示没有解,否则返回解

结果

class Solution {public int coinChange(int[] coins, int amount) {if (amount == 0) return 0;// 贪心 -> 不可行,因为最优解未必通过贪心结果组成。如果贪心最大面值的硬币,结果可能是由部分小硬币组成的(因为大硬币无法组成目标面额)int[] dp = new int[amount + 1]; // 动态规划数组表示组成目标金额需要几枚硬币// 初始化dp数组Arrays.fill(dp, amount + 1);dp[0] = 0; // 如果组成金额0需要0枚硬币for (int i = 1; i < amount + 1; i++) {for (int coin : coins) { // 每个面额下的硬币if (coin <= i){ // 如果硬币面额 < 当前所需组成的amount// 要么使用coin:此时硬币数量=1+(目标amount-指定面额)硬币数量// 要么不用coin:此时硬币数量=目标amount硬币数量dp[i] = Math.min(dp[i - coin] + 1, dp[i]);}}}return dp[amount] > amount ? -1 : dp[amount];}
}
http://www.yayakq.cn/news/919491/

相关文章:

  • 新闻类网站怎么建设怎样做招嫖网站
  • 网站推广费用一般多少钱深圳开发软件公司
  • 杭州优化网站网站怎么申请怎么注册
  • 佛山大型的网站制作ip子域名大全
  • 什么样的网站可以做站群厦门易尔通做网站怎么样
  • 六安找人做网站扬中新网网
  • 北京视频网站建设网站关键词优化互点
  • 织梦网站模板如何安装怎样网站建设
  • 重庆seo网站哪家好招聘网站续费怎么做分录
  • 山东网站排名优化公司注册劳务公司需要多少钱
  • 城市分类信息网站系统c语言和网站建设的关系
  • 济南网站设计公司富家居网站建设策划
  • 做网站图片要求高吗企业网络品牌维护
  • 做新零售这些注册网站和找货源网站开发用什么技术可行性
  • 沈阳公司做网站制作一款软件需要多少钱
  • 我做服装设计师的 求推荐资源网站seochinaz查询
  • 湘潭做网站 m磐石网络高仿酒网站怎么做
  • 青岛市城市建设管理局网站seo网站推广招聘
  • 外贸英语网站中山做app网站公司哪家好
  • 建立网站怎么申请wordpress企业主题 下载
  • 视频网站的服务器多大关键词排名网站
  • 酒店网站建设公司排名网站建设 英语
  • 济南行业网站开发网站双倍浮动
  • 旅游+网站建设wordpress seven
  • 宿迁网站建设cy0001大型网站建设翻译英文
  • 网站定制合同和模版的区别做网站手机端需要pc端的源代码吗
  • 安徽 网站开发企业网站建设admin
  • 有域名了怎么做网站网站建设技术服务费怎么入账
  • 最新网站查询广州服务
  • 哪里可以上传自己的php网站总部在深圳的大企业