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

wordpress套模板培训成都百度网站排名优化

wordpress套模板培训,成都百度网站排名优化,为什么网站后台google登陆不了 firefox可以,个人网站做导购要什么经营许可1.题目解析 题目来源:1567.乘积为正数的最长子数组——力扣 测试用例 2.算法原理 1.状态表示 因为数组中存在正数与负数,如果求乘积为正数的最长子数组,那么存在两种情况使得乘积为正数,第一种就是正数乘以正数,第…

1.题目解析 

题目来源:1567.乘积为正数的最长子数组——力扣 

测试用例 

2.算法原理

1.状态表示

因为数组中存在正数与负数,如果求乘积为正数的最长子数组,那么存在两种情况使得乘积为正数,第一种就是正数乘以正数,第二种就是负数乘以负数,那么就必须使用两个表来分别存储这两种情况,其中f表存储乘积为正数的子数组最长长度,g表存储乘积为负数的子数组最长长度

f[i]:以第i个位置为结尾的乘积为正数的子数组最长长度

g[i]:以第i个位置为结尾的乘积为负数的子数组最长长度

2.状态转移方程

当遇到的为正数,此时填两个表需要分别用到自己表的前一个位置的值,也就是

f[i]=f[i-1]+1;g[i]=g[i-1]==0?0:g[i-1]+1;这里特殊处理g表是因为当第i个位置之前乘积全为正数时g[i-1]=0,如果此时直接g[i]=g[i-1]+1则不符合实际情况

当遇到的为负数,此时填两个表需要用到对方表内的前一个位置的值,也就是

f[i]=g[i-1]==0?0:g[i-1]+1;g[i]=f[i-1]+1;这里以及特殊处理g[i-1]避免错误

3.初始化

由于填表需要用到前一个位置的值,所以可以开辟一个虚拟位置在循环内初始化两个表,此时需要处理虚拟位置的值,我们由状态转移方程可知在初始化第一个位置时用虚拟位置的值,此时虚拟位置的值为0不会影响结果,所以将虚拟位置置为0即可

4.填表顺序

从左到右,两个表一起填写

5.返回值

返回f表的最大值即可

3.实战代码

class Solution {
public:int getMaxLen(vector<int>& nums) {int n = nums.size();vector<int> f(n+1);vector<int> g(n+1);int ret = INT_MIN;for(int i = 1;i <= n;i++){if(nums[i-1] > 0){f[i] = f[i-1] + 1;g[i] = g[i-1] == 0 ? 0 : g[i-1] + 1;}if(nums[i-1] < 0){f[i] = g[i-1] == 0 ? 0 : g[i-1] + 1;g[i] = f[i-1] + 1;}ret = max(f[i],ret);}    return ret;}
};
http://www.khdw.cn/news/17736.html

相关文章:

  • 做物流网站费用多少为什么外包会是简历污点
  • 平面设计网课平台哪个好seog
  • 网站英文廊坊关键词优化排名
  • gif表情包制作网站2022年新闻摘抄十条
  • 个人能否做网站东莞seo优化排名推广
  • 做网站销售电话术语百度风云榜游戏排行榜
  • 网站建设哪一家好百度号注册官网
  • 学习java可以做网站吗网站权重什么意思
  • 公司网站制做百度sem竞价推广
  • 网站简单代码2023网站seo
  • 泰州网站建设费用百度关键词排名突然下降很多
  • 网站关键词优化的方法公司网站制作
  • 真人做爰直播网站傻瓜式自助建站系统
  • 网站办公室文化建设合肥做网站公司哪家好
  • 一个刚有官网的公司怎么做网站运营农技推广
  • android 旅游网站开发营销方式有哪些
  • html个人网站策划书国外网站如何搭建网页
  • 有什么网站可以做团购泉州排名推广
  • 限制个人做网站网络安全培训
  • 免费域名注册登录西安关键词优化服务
  • 个人做外贸网站知乎关键词排名优化
  • 网站怎么做速排宁波外贸网站推广优化
  • 百度资源搜索平台官网沧州网站seo公司
  • 美国纽约网站建设费用汽车网络营销的方式有哪些
  • 设计素材网站免费的推广优化seo
  • 网站的建设与维护有什么作用搜索引擎google
  • 宝塔面板怎么做多个网站seo优化视频教程
  • 安徽专业做网站的公司广州新塘网站seo优化
  • 上海刚刚发生的大事seo赚钱
  • 石家庄智能网站建设嘉兴seo外包公司费用