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

襄樊网站建设公司营业推广经典案例

襄樊网站建设公司,营业推广经典案例,校园网站建立,appcms程序怎么做网站题目描述 原题链接:494. 目标和 解题思路 (1)回溯法 本题的特点是nums中每个元素只能使用一次,分别试探加上nums[index]和减去nums[index],然后递归的遍历下一个元素index 1。 class Solution { public:int res …

题目描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
原题链接:494. 目标和

解题思路

(1)回溯法

本题的特点是nums中每个元素只能使用一次,分别试探加上nums[index]和减去nums[index],然后递归的遍历下一个元素index + 1

class Solution {
public:int res = 0;void backtracking(vector<int>& nums, int target, int index) {if(index == nums.size()) {if(target == 0)         res++;return ;}backtracking(nums, target - nums[index], index + 1);backtracking(nums, target + nums[index], index + 1);}int findTargetSumWays(vector<int>& nums, int target) {backtracking(nums, target, 0);return res;}
};

(2)动态规划

本题中的数都为非负数,目标要求是选取组成正数的数与负数的数,让其和为target,因此我们可以将这个题中的数划分为两个集合,一个是要组成正数的集合,设容量为pos,一个是要组成负数的集合,设容量为neg

由题中要求可得pos - neg = targetpos + neg = sum,联立两式,可得2 * pos = target + sum,因此我们就可以进行第一个判定,target + sum不为偶数时,可知一定不能组合出target直接返回false即可。当为偶数时,我们要找到可以组成pospos = (target + sum) / 2)的组合。问题就可以转变为,当背包容量为pos时,选取nums里的数,有多少种组合方式可填满背包。

  • 动态规划五步曲:

(1)dp[j]含义: 装满背包容量为j的方式个数。

(2)递推公式: dp[j] += dp[j - nums[i]],装入nums[i]之前,容量为j - nums[i]时的方式个数dp[j - nums[i]],再加上装入nums[i]之后,容量为j时之前的方式个数dp[j],进而得到背包容量为j时,总的方式个数。

(3)dp数组初始化: dp[0] = 1,容量为0时,仅有一种方式可以成立,即选择数字0。

(4)遍历顺序: 先物品、再背包,内层按从大到小遍历的滚动数组。

(5)举例:

输入: nums: [1, 1, 1, 1, 1], S: 3
此时,正数最大为4,里面只有1,因此dp[j]长度为4。
在这里插入图片描述

class Solution {
public:int findTargetSumWays(vector<int>& nums, int target) {int sumNums = 0;for(int i = 0; i < nums.size(); i++)                    sumNums += nums[i];// target超过总和或者不满足pos为偶数的情况,直接返回0if(abs(target) > sumNums || (sumNums + target) % 2 != 0)     return 0;int dp[10001] = {0};dp[0] = 1;int pos = (sumNums + target) / 2;for(int i = 0; i < nums.size(); i++) {for(int j = pos; j >= nums[i]; j--) {// 组合情况要累计dp[j] += dp[j - nums[i]];}}return dp[pos];}
};

参考文章:494. 目标和、目标和、目标和(详细C++代码动态规划详细思路分析)

http://www.shuangfujiaoyu.com/news/41875.html

相关文章:

  • 网站模板怎么做凡科建站客服电话
  • 成品网站模板下载宁波网站推广专业服务
  • 网站服务做推广个人永久免费自助建站
  • 济南最新疫情文件通知seo品牌优化
  • 网站开发公司流程网站优化方案设计
  • 常德制作网站短期培训学什么好
  • 时时彩五星做号网站谷歌在线搜索
  • 网络管理网站策划书购物链接
  • 一米八效果图网站搜索引擎营销方法
  • 网站建设专业seo排名怎么做
  • 顶呱呱网站建设是外包的吗百度搜索风云榜下载
  • 怎么制作微信小程序游戏seo网站推广的主要目的
  • 交互式网站建设宣传方式
  • 郑州网站开发公网站推广软文
  • 免费网站建站 知乎廊坊seo关键词优化
  • 上海大 小企业网站制作没经验可以做电商运营吗
  • 外网网站建设站长之家最新网站
  • 广州做门户网站b站推广网站入口
  • 大学生课程设计网站百度指数在线查询工具
  • seo排名优化公司做网站seo优化
  • 网站内链布局赵阳竞价培训
  • 提供广东中山网站建设强强seo博客
  • wordpress产品展示页面太原seo哪家好
  • 清远市网站建设公司制作网页的步骤
  • asp网站怎么做301南京百度推广优化排名
  • 网页设计6种布局方式广西网站seo
  • 泉州住房和城乡建设部网站怎么找平台推广自己的产品
  • 网站开发公司建网站百度公司招聘2022年最新招聘
  • 怎么建立自己网站 asp营销型网站建设总结
  • WordPress 多个分类目录优化游戏性能的软件