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

网上兼职做论坛版主 网站编辑全网营销推广系统

网上兼职做论坛版主 网站编辑,全网营销推广系统,广东建筑信息平台,2017网站建设报价单题目链接:416. 分割等和子集 文章讲解:代码随想录 416. 分割等和子集讲解 视频讲解:动态规划之背包问题,这个包能装满吗?| LeetCode:416.分割等和子集 思路和解法 题目: 给你一个 只包含正整…

题目链接:416. 分割等和子集

文章讲解:代码随想录 416. 分割等和子集讲解

视频讲解:动态规划之背包问题,这个包能装满吗?| LeetCode:416.分割等和子集

思路和解法

题目:
给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。
想法:
第一次接触背包问题,思路还是挺巧妙的,而且通过今天这道题目我感觉熟悉以后可能很多问题都可以转化为背包问题,纯猜测的。01背包二维数组的方法更容易理解,但是一维数组似乎更实用一些,区别也不大,注意一下外层循环遍历物品,更新dp数组从后向前更新即可。

class Solution {
public:
//核心思路:如果能凑出和为所有数字求和的一半,就说明可以分割成功
//凑的过程简化为01背包问题,每个数字只能选一次,每个数字就是物品价值,同时也是物品重量
//假设有一个背包容量为sum/2,就看数字能不能刚好填满背包
//其实直接想似乎不需要价值,但因为背包问题有价值,那就不妨假设数字同时也是物品价值bool canPartition(vector<int>& nums) {//数组长度<=200 数字<=100,求和就小于等于20000,一半就小于等于10000// vector<int> dp(10001, 0);//先判断求和是否是偶数int sum = 0;for (int i = 0; i < nums.size(); i++) {sum += nums[i];}if (sum % 2 == 1) return false;int target = sum / 2;vector<int> dp(target + 1, 0);//一维数组 背包问题 外层循环遍历物品 一维数组要从后往前遍历 防止一个物品多次加入for (int i = 0; i < nums.size(); i++) {//背包空间要大于等于当前物品重量 才考虑可能放入for (int j = target; j >= nums[i]; j--) {//不放入当前物品的最大价值 和 放入当前物品后剩余空间能放的最大价值dp[j] = max(dp[j], dp[j - nums[i]] + nums[i]);}}if (dp[target] == target) return true;return false;}
};
http://www.wooajung.com/news/23049.html

相关文章:

  • 做一个网站的预算查权重工具
  • 如何管理手机网站首页一呼百应推广平台
  • 蓝色企业网站手机版织梦模板东莞海外网络推广
  • 广告设计教程黄山网站seo
  • 郑州网站优化软件哪里有软件培训班
  • 建网站建设的基本流程百度一下京东
  • 网站添加文章之后更新缓存访问网站就需要输入账号密码疫情最新情况 最新消息 全国
  • 微信问卷调查小程序怎么做windows优化大师收费吗
  • 网络营销课程设计总结小红书怎么做关键词排名优化
  • 网站建设 设计 优化 维护官方百度平台
  • 怎么用vs2008做网站站长之家素材
  • b2c中日外贸有哪些网站做的好公众号引流推广平台
  • 无烟锅网站规划与建设淘宝指数查询
  • 网站后台公告id修改免费发布信息不收费的网站
  • 互动营销型网站建设百姓网
  • 国外网站做问卷怎样推广自己的广告
  • 做微商自己建网站合适吗seo外包公司优化
  • 做网站拍幕布照是什么意思网络运营推广是做什么的
  • 哈尔滨建站公司模板网址申请注册
  • 建立网站的基本流程短视频推广app
  • 贵州桥梁集团建设有限公司网站安卓优化大师下载安装
  • 网站图片切换怎么做免费域名申请个人网站
  • 陈仓网站建设论坛推广方案
  • 网站更改目录做301河南企业网站推广
  • 昆明建站公司推荐网络广告营销对应案例
  • 南京网站制作公司招聘哪个搜索引擎能搜敏感内容
  • 电商网站排行市场推广方案
  • 数码公司网站建设调查线上培训
  • 整套网站模板下载站长之家网站查询
  • 网站开发的服务器是什么快速整站排名seo教程