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

邢台哪有学做网站的网站里面的图片做桌面不清晰

邢台哪有学做网站的,网站里面的图片做桌面不清晰,vue移动端开发,做淘客网站要什么样服务器一、1049. 最后一块石头的重量 II 1.思路:01背包问题,其中dp[j]表示容量为j的背包,最多可以背最大重量为dp[j]。 2.注意:递推公式dp[j] max(dp[j], dp[j - stones[i]] stones[i]);本题中的重量就是价值,所以第二个…

一、1049. 最后一块石头的重量 II

1.思路:01背包问题,其中dp[j]表示容量为j的背包,最多可以背最大重量为dp[j]

2.注意:递推公式dp[j] = max(dp[j], dp[j - stones[i]] + stones[i]);本题中的重量就是价值,所以第二个stone[i]表示价值的意思; 遍历顺序上仍然是先物品后背包

3.本题与分割等和子集类似,不同就在于最后return时,本题得到的target = sum / 2 因为是向下取整,所以sum - dp[target] 一定是大于等于dp[target]。

所以相撞也就是将target与sum - dp[target]作差即可。

class Solution {public int lastStoneWeightII(int[] stones) {if (stones.length == 0 || stones == null)return 0;int sum = 0;// 先求出这堆石头的和,以便得到背包能背的最大重量for (int stone : stones) {sum += stone;}int target = sum >> 1;int[] dp = new int[target + 1];// for循环, 先物品再背包for (int i = 0; i < stones.length; i++) {// 这里的内循环一定是j >= stone[i] ,否则无法判断第二个max条件for (int j = target; j >= stones[i]; j--){dp[j] = Math.max(dp[j], dp[j - stones[i]] + stones[i]);}}return sum - 2 * dp[target];}
}

二、完全背包

1.有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。

完全背包和01背包问题唯一不同的地方就是,每种物品有无限件

2.核心代码:区别于01背包的一维滚动数组,差别就是内循环

for(int i = 0; i < weight.size(); i++) { // 遍历物品for(int j = bagWeight; j >= weight[i]; j--) { // 遍历背包容量dp[j] = max(dp[j], dp[j - weight[i]] + value[i]);}
}

3.计算过程

 3.518. 零钱兑换 II

1.思路:完全背包。

2.递推公式:dp[j] += dp[j - nums[i]],表示填满j(包括j)这么大容积的包,有dp[j]种方法。

例如:dp[j],j 为5,

  • 已经有一个1(nums[i]) 的话,有 dp[4]种方法 凑成 容量为5的背包。
  • 已经有一个2(nums[i]) 的话,有 dp[3]种方法 凑成 容量为5的背包。
  • 已经有一个3(nums[i]) 的话,有 dp[2]中方法 凑成 容量为5的背包
  • 已经有一个4(nums[i]) 的话,有 dp[1]中方法 凑成 容量为5的背包
  • 已经有一个5 (nums[i])的话,有 dp[0]中方法 凑成 容量为5的背包

那么凑整dp[5]有多少方法呢,也就是把 所有的 dp[j - nums[i]] 累加起来。

3.注意:该题纯完全背包是能凑成总和就行,不用管怎么凑的,不需要管顺序。

4.代码:

class Solution {public int change(int amount, int[] coins) {//    dp[j] 表示:填满j(包括j)这么大容积的包,有dp[j]种方法int[] dp = new int[amount+1];//初始化dp数组,表示金额为0时只有一种情况,也就是什么都不装dp[0] = 1;for (int i = 0; i < coins.length; i++) {   // 零钱的种类数for (int j = coins[i]; j <= amount; j++){  // 组合方法dp[j] += dp[j - coins[i]];}}return dp[amount];}
}

http://www.yayakq.cn/news/60353/

相关文章:

  • 设计素材网站推荐2023浙江省水利建设行业协会网站
  • 二级域名做网站注意免费的seo优化工具
  • 什么是垂直型网站做一个网页容易吗
  • 河北建设信息平台网站万网网站开发
  • .net 网站开发权限设计301网站目录
  • 七牛云存储 wordpress连接失败seo做的好的网站 知乎
  • 百度喜欢什么样的网站知名企业名字
  • 加盟酒店网站制作淘客网站建设视频
  • 江门好的建站网站爱山东app二维码
  • 北京网站建设公司华网网站建设作品
  • 网站友情链接wordpress 4.7.3 乱码
  • 网站服务器地址查询seo概念的理解
  • 网站广告模板代码wordpress4.7.5下载
  • 免费模板下载网站推荐海口官网设计
  • 网站建设推广优化wordpress图书馆管理
  • 淄博网站建设与推广长沙在线注册公司
  • 电商网站设计网络服务长沙有哪些做网站的公司
  • 用.net做网站人工智能在线ai写作网站
  • 域名之后怎么做网站电子商务公司图片
  • 做网站多少钱一个网站的站点地图怎么做
  • 江西建设职业技术学院迎新网站武进网站建设咨询
  • 清华紫光是可以做网站的吗农业开发公司好名字
  • 上传网站视频要怎么做才清楚长沙如何做百度的网站推广
  • 微信网站页面制作上海搬家公司哪家便宜
  • 怎么做祝福网站公路开发公司
  • 哪些公司做网站免费学校网站系统
  • php网站开发目的提供网站建设工具的品牌有哪些
  • 网站后台模板关联自己做的网站网络管理系统的每个节点都包含一组与管理有关的软件
  • htnl5 做的视频网站站长平台社区
  • 网站的关键词报价的网站海南智能网站建设设计