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

尤溪县建设局网站自动app优化官网

尤溪县建设局网站,自动app优化官网,一起做网站17怎么下单,非主流图片在线制作70爬楼梯这道题之前已经做过,是动态规划思想的入门,想要爬上第n层阶梯,看爬上n-1层的方法和n-2层的方法共有多少种,两个相加就是爬上n层阶梯的方法。这里扩展到每次可以爬k层,这样就是一个动态规划问题。因为每次可以爬…

70爬楼梯这道题之前已经做过,是动态规划思想的入门,想要爬上第n层阶梯,看爬上n-1层的方法和n-2层的方法共有多少种,两个相加就是爬上n层阶梯的方法。这里扩展到每次可以爬k层,这样就是一个动态规划问题。因为每次可以爬1-k层,所以把k作为物品,爬到n层作为背包容量,爬的楼梯数k可以重复,所以是个完全背包问题。定义数组dp[i],dp[i]表示爬上i层阶梯的方法数。初始化dp[0]= 1,因为爬上第0层的方法为1,也就是不用动。因为爬楼梯的层数可以重复,所以我理解成排列问题,遍历顺序先背包容量再物品,物品再内层循环,每次就都可以从最小开始,可以重复。

322零钱兑换,目标数是背包容量,零钱数组coins是物品,dp[i]表示的是零钱的个数。初始化dp[0] = 0,因为0元的兑换不需要硬币,所以是0.因为零钱是可以重复使用的,所以是个完全背包问题,但是零钱是个组合问题,比如说6块钱可以用5元和1元零钱兑换,也可以用1元和5元兑换(和5元,1元的顺序不同),但是是同一种方法,所以这是组合问题。组合问题要先遍历物品再遍历背包。

79完全平方数,整数n时背包容量,物品是完全平方数,dp[i]表示和为n的最小物品数量。这里完全平方数可以重复使用,并且是个组合问题,和完全平方数的顺序无关,所以是个多重背包的组合问题。需要先遍历物品,再遍历背包容量。

70. 爬楼梯

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

示例 1:

输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶。
1. 1 阶 + 1 阶
2. 2 阶

示例 2:

输入:n = 3
输出:3
解释:有三种方法可以爬到楼顶。
1. 1 阶 + 1 阶 + 1 阶
2. 1 阶 + 2 阶
3. 2 阶 + 1 阶

提示:

  • 1 <= n <= 45
class Solution {public int climbStairs(int n) {// int [] dp = new int[3];// if(n < 3){//     return n;// }// dp[0] = 1;// dp[1] = 2;// for(int i = 2; i < n; i++){//     dp[2] = dp[1] + dp[0];//     dp[0] = dp[1];//     dp[1] = dp[2];// }// return dp[2];int[] dp = new int[n + 1];int[] weigh = {1, 2};dp[0] = 1;for(int i = 0; i <= n; i++){for(int j = 0; j < weigh.length; j++){if(i >= weigh[j]){dp[i] += dp[i - weigh[j]];}}}return dp[n];}
}

322. 零钱兑换

给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。

计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。

你可以认为每种硬币的数量是无限的。

示例 1:

输入:coins = [1, 2, 5], amount = 11
输出:3 
解释:11 = 5 + 5 + 1

示例 2:

输入:coins = [2], amount = 3
输出:-1

示例 3:

输入:coins = [1], amount = 0
输出:0

提示:

  • 1 <= coins.length <= 12
  • 1 <= coins[i] <= 231 - 1
  • 0 <= amount <= 104
class Solution {public int coinChange(int[] coins, int amount) {int len = coins.length;int[] dp = new int[amount + 1];dp[0] = 0;for(int i = 1; i <= amount; i++){dp[i] = amount + 1;}for(int i = 0; i < len; i++){for(int j = coins[i]; j <= amount; j++){dp[j] = Math.min(dp[j], dp[j - coins[i]] + 1);}}if(dp[amount] > amount){return -1;}return dp[amount];}
}

279. 完全平方数

给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。

完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,149 和 16 都是完全平方数,而 3 和 11 不是。

示例 1:

输入:n = 12
输出:3 
解释:12 = 4 + 4 + 4

示例 2:

输入:n = 13
输出:2
解释:13 = 4 + 9

 

提示:

  • 1 <= n <= 104
class Solution {public int numSquares(int n) {int[] dp = new int[n + 1];for(int i = 0; i <= n; i++){dp[i] = n;}dp[0] = 0;for(int i = 1; i * i <= n ; i++){for(int j = i * i; j <= n; j++){dp[j] = Math.min(dp[j], dp[j - i * i] + 1);}}return dp[n];}
}

http://www.tj-hxxt.cn/news/23072.html

相关文章:

  • 软文什么意思seo公司外包
  • 商标被注册了做网站seo快速排名优化
  • 如何更改公司网站内容百度收录怎么做
  • 竞价广告是怎么推广的网站关键词优化排名推荐
  • 金融公司网站 html关键词数据
  • 长沙网站seo分析注册教育培训机构需要什么条件
  • 桂林网站制作哪家好关键词网站排名软件
  • 运城网站建设公司有多少昆明排名优化
  • 免费做网站的好不好廊坊关键词优化报价
  • 广州海珠网站开发方案百度大数据官网入口
  • 阿里巴巴网站的pc端和手机端怎么做的裂变营销
  • 网络公司服务武汉seo技术
  • 网上做批发网站有哪些百度指数搜索
  • 医院做网站备案都需要什么软件开发外包
  • 武汉企业网站制作朋友圈推广一天30元
  • 房地产企业网站模板免费下载推一手新闻发稿平台
  • 网站域名免费吗网站优化排名资源
  • 长沙免费网站排名网络营销方式方法
  • 海南房产网站开发温州免费建站模板
  • 网站搭建代理高端网站建设专业公司
  • 中国人在国外做赌博网站代理山东自助seo建站
  • 网络营销推广的八大核心能力某网站搜索引擎优化
  • 投资公司注册需要什么资质seo 优化案例
  • 什么类型的产品可以做网站出口推广赚佣金
  • wordpress word复制seoheuni
  • 网站功能模块结构图建设网站
  • 深圳龙岗新楼盘开盘信息网站推广优化外链
  • 做网站 分类搜索百度搜一搜
  • 公司自建网站需要多少钱武汉最新疫情
  • 大庆做网站找谁有域名和服务器怎么建网站