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

佛山公共交易资源平台手机网站优化 工具

佛山公共交易资源平台,手机网站优化 工具,dnf交易网站建设,软件开发和网站建设哪个好给你一个非负整数数组 nums 和一个整数 target 。 向数组中的每个整数前添加 或 - ,然后串联起所有整数,可以构造一个 表达式 : 例如,nums [2, 1] ,可以在 2 之前添加 ,在 1 之前添加 - ,然…

给你一个非负整数数组 nums 和一个整数 target 。

向数组中的每个整数前添加 '+' 或 '-' ,然后串联起所有整数,可以构造一个 表达式 :

 ·例如,nums = [2, 1] ,可以在 2 之前添加 '+' ,在 1 之前添加 '-' ,然后串联起来得到表达式 "+2-1" 。

返回可以通过上述方法构造的、运算结果等于 target 的不同 表达式 的数目。

示例 1:

输入:nums = [1,1,1,1,1], target = 3
输出:5
解释:一共有 5 种方法让最终目标和为 3 。
-1 + 1 + 1 + 1 + 1 = 3
+1 - 1 + 1 + 1 + 1 = 3
+1 + 1 - 1 + 1 + 1 = 3
+1 + 1 + 1 - 1 + 1 = 3
+1 + 1 + 1 + 1 - 1 = 3

示例 2:

输入:nums = [1], target = 1
输出:1

提示:

 ·1 <= nums.length <= 20

 ·0 <= nums[i] <= 1000

 ·0 <= sum(nums[i]) <= 1000

 ·-1000 <= target <= 1000

题目大意:在每个数可正可负的情况下计算所有数和为target的表达式数目。

分析:

(1)设所有数都是正数时的和为sum,添加负号的元素的绝对值和为tar,使(sum-tar)-tar=target,则tar=(sum-target)/2;

(2)由(1)可知,当(sum-target)%2==1或者sum-target<0时,不可能有和为target的表达式,返回0即可;否则在原数组中选取若干元素使其所选元素的绝对值和为tar即可满足表达式和为target,因此所求的表达式数目为从数组中选取若干元素使绝对值和为tar的方案数;

(3)为求从数组中选取若干元素使绝对值和为tar的方案数,可设二维数组dp,dp[i][j]表示从数组中前i个元素中选取若干元素使绝对值和为j的方案数。则当j<nums[i]时,dp[i][j]=dp[i-1][j],当j>=nums[i]时,dp[i][j]=dp[i-1][j]+dp[i-1][j-nums[i]]。最终dp[nums.size()][tar]的值即为从数组中选择若干元素使绝对值和为tar的方案数,返回即可;

(4)由于dp数组每一行的元素只与上一行的元素有关,因此可对dp数组进行降维,则dp[k]表示遍历第i个元素时从前i-1个元素中选取若干元素使绝对值和为k的方案数。

class Solution {
public:int findTargetSumWays(vector<int>& nums, int target) {int N=nums.size(),sum=0;for(int ele:nums) sum+=ele;int diff=sum-target,tar=diff/2;if(diff<0||diff%2) return 0;vector<int> dp(tar+1,0);dp[0]=1;for(int ele:nums){for(int k=tar;k>=ele;--k) dp[k]+=dp[k-ele];}return dp[tar];}
};
http://www.yayakq.cn/news/60822/

相关文章:

  • yii2框架做的网站有哪些东莞做网站怎么样
  • 漳州违法建设举报网站怎么制作网站主题
  • 最全的网站大全做网站制作步骤
  • 网站建设公司价位删除wordpress主题底部
  • 如何做产品网站建设个人网站的投稿平台
  • 建设网站要注册公司吗温州网页网站制作
  • 十大猎头公司排名seo在线优化系统
  • 网站建设网页怎么排列顺序网站建设公司-山而
  • 网站开发网站源码美区能和国区家庭共享吗
  • 10分钟免费建网站帮别人做网站开票开什么税目
  • 51购物网官方网站贵 建设厅网站文件
  • 个体户营业执照可以网站备案杭州手机建站模板
  • 自己找网站开发项目免费论坛创建
  • 西安网站seo价格佛山哪里做网站
  • 网站建设的前端和后端做三轨网站犯法吗
  • 网站不能粘贴怎么做网站建设计划书 模板下载
  • 苏州网联盛网站建设成立一个公司需要哪些流程
  • 西安网站建设培训学校广东小程序系统开发
  • 营销型网站建设的优势有哪些怎么修改wordpress站点代码
  • 网站推广网站关键词排名怎么做上海网站优化推广公司
  • 哪里有免费的域名注册建网站php7 wordpress
  • 优化算法 网站合肥晚报社官方网站
  • 怎样找到正规代加工网站网站开发语言入门
  • 购买域名网站佛山禅城网站建设
  • 哈尔滨公司网站开发北京做网站优化的科技公司
  • 做创新方法工作的网站网站代码优化目的
  • 常熟苏州网站建设公司网站进不去qq空间
  • 微网站开发流程阿里云域名注册备案流程
  • 网站广告代码seo如何提升排名收录
  • 建设中医知识学习网站jpress与wordpress