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

建设自己公司的网站网站软文设计

建设自己公司的网站,网站软文设计,烟台网络推广引流,设计说明模板1 题目&#xff1a;分割数组的最多方案数 官方标定难度&#xff1a;难 给你一个下标从 0 开始且长度为 n 的整数数组 nums 。分割 数组 nums 的方案数定义为符合以下两个条件的 pivot 数目&#xff1a; 1 < pivot < n nums[0] nums[1] … nums[pivot - 1] nums[pi…

1 题目:分割数组的最多方案数

官方标定难度:难

给你一个下标从 0 开始且长度为 n 的整数数组 nums 。分割 数组 nums 的方案数定义为符合以下两个条件的 pivot 数目:

1 <= pivot < n
nums[0] + nums[1] + … + nums[pivot - 1] == nums[pivot] + nums[pivot + 1] + … + nums[n - 1]
同时给你一个整数 k 。你可以将 nums 中 一个 元素变为 k 或 不改变 数组。

请你返回在 至多 改变一个元素的前提下,最多 有多少种方法 分割 nums 使得上述两个条件都满足。

示例 1:

输入:nums = [2,-1,2], k = 3
输出:1
解释:一个最优的方案是将 nums[0] 改为 k 。数组变为 [3,-1,2] 。
有一种方法分割数组:

  • pivot = 2 ,我们有分割 [3,-1 | 2]:3 + -1 == 2 。

示例 2:

输入:nums = [0,0,0], k = 1
输出:2
解释:一个最优的方案是不改动数组。
有两种方法分割数组:

  • pivot = 1 ,我们有分割 [0 | 0,0]:0 == 0 + 0 。
  • pivot = 2 ,我们有分割 [0,0 | 0]: 0 + 0 == 0 。

示例 3:

输入:nums = [22,4,-25,-20,-15,15,-16,7,19,-10,0,-13,-14], k = -33
输出:4
解释:一个最优的方案是将 nums[2] 改为 k 。数组变为 [22,4,-33,-20,-15,15,-16,7,19,-10,0,-13,-14] 。
有四种方法分割数组。

提示:

n == nums.length
2 < = n < = 1 0 5 2 <= n <= 10^5 2<=n<=105
− 1 0 5 < = k , n u m s [ i ] < = 1 0 5 -10^5 <= k, nums[i] <= 10^5 105<=k,nums[i]<=105

2 solution

求前缀和,查找前缀和为总和一半的个数,由于改变某个元素时,部分前缀和已经改变,所以需要维持两个前缀和 map,一个是改变的元素之前的map,另一个是之后的 map,然后依次更新两个 map 并统计最大频数

代码

class Solution {/** 求前缀和,查找前缀和为总和一半的个数*/
public:int waysToPartition(vector<int> &nums, int k) {long long s = 0, ss = 0;unordered_map<long, int> map, pre;for (int i = 0; i < nums.size() - 1; i++) {s += nums[i];map[s]++;}s += nums.back();int Max = (s % 2 == 0) * map[s / 2];for (int i: nums) {// 如果把 i 变成 k,  < i 时查找 (s + k - i) / 2 的个数 >= i 时查找 (s + k - i) / 2 - k + iif ((s + k - i) % 2 == 0) {long long x = (s + k - i) / 2;Max = max(Max, pre[x] + map[x - k + i]);}ss += i;  // 前缀和pre[ss]++;map[ss]--;}return Max;}
};

结果

在这里插入图片描述


文章转载自:

http://j7JCPFh2.ghfmd.cn
http://Babo5XZi.ghfmd.cn
http://WTtG0SiE.ghfmd.cn
http://KA6oDTtL.ghfmd.cn
http://DGjZHXot.ghfmd.cn
http://82jRsWdD.ghfmd.cn
http://0v6Exr3w.ghfmd.cn
http://O9KSNSMq.ghfmd.cn
http://dRm5dShQ.ghfmd.cn
http://DaA8Okki.ghfmd.cn
http://aUM7njn6.ghfmd.cn
http://rggYYyN3.ghfmd.cn
http://09EQj1qe.ghfmd.cn
http://IlkVyiim.ghfmd.cn
http://fpjXnzQz.ghfmd.cn
http://2gGPoD0R.ghfmd.cn
http://8UyllyNS.ghfmd.cn
http://rtppT0hc.ghfmd.cn
http://tOV7EA5E.ghfmd.cn
http://H6i1bnEH.ghfmd.cn
http://gxCr2XIq.ghfmd.cn
http://5tDtcWQG.ghfmd.cn
http://KlWtAnTu.ghfmd.cn
http://bAXI930K.ghfmd.cn
http://YGVUQLuS.ghfmd.cn
http://B9RNOEPR.ghfmd.cn
http://Y1cJN13P.ghfmd.cn
http://F7nNJP7T.ghfmd.cn
http://vjMb6qXK.ghfmd.cn
http://UD9HBSNJ.ghfmd.cn
http://www.dtcms.com/wzjs/739921.html

相关文章:

  • 网站建设规划建议制作公司网站的流程
  • 加大网站集约化建设管理建材招商网站
  • 毕节城乡建设局网站字体安装+wordpress
  • 免费上线个人网站如何提高网站百度权重
  • 网站如何在百度做排名辽宁工程监督
  • vue做购物网站flat movie wordpress
  • 2017年做那个网站致富html静态网页制作代码免费
  • 南靖县建设局网站网站建设的要素
  • 代理网站建设公司学院的网站建设的意义
  • 红安县建设局网站江苏无锡今天的最新发布消息
  • 云南网站备案查询凡科互动小游戏
  • 学校网站建设设计方案网站如何推广行业
  • 成都网站建设是什么意思为什么大家用wordpress建网站
  • 网站增加keywords关键词有影响吗做网站需要什么技术人员
  • 中国建设执业资格注册中心网站wordpress 换主题
  • 网站开发人员工资计入无形资产找项目网
  • 郑州学校网站建设教育视频培训网站建设
  • iis5.1怎么新建网站如何用VS2017做网站
  • 西安优化网站公司wordpress themes 目录
  • 垂直门户网站的盈利模式探讨网站开发有哪些软件有哪些
  • 经营范围 网站建设seo网页优化平台
  • 中国建设网站用户名网站群建设路径
  • 做网站广告有哪些职位进入官方网站
  • 网站设计市场价广州黄埔建网站
  • 百事通网做网站苏州网站搜索排名
  • 如何做网站视频响应式网站切图
  • 提高企业网站的访问率域名到期了网站会打不开吗
  • 无水印视频素材下载免费网站自动写作文网站
  • 湖南郴州建设局网站求网站懂的说下开车
  • 邯郸建设企业网站佛山企业网站建设公司