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

受欢迎的赣州网站建设网站建设咨询话术技巧

受欢迎的赣州网站建设,网站建设咨询话术技巧,建设网站哪家专业,网页设计模板素材旅游1.题目解析 题目来源#xff1a;1567.乘积为正数的最长子数组——力扣 测试用例 2.算法原理 1.状态表示 因为数组中存在正数与负数#xff0c;如果求乘积为正数的最长子数组#xff0c;那么存在两种情况使得乘积为正数#xff0c;第一种就是正数乘以正数#xff0c;第… 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(vectorint nums) {int n nums.size();vectorint f(n1);vectorint g(n1);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.w-s-a.com/news/762246/

相关文章:

  • 做爰全过程免费网站的视频做网站的几个步骤
  • cpa建站教程青海西宁制作网站企业
  • 简易的在线数据库网站模板网站多服务器建设
  • 成都seo网站建设花店网页模板html
  • 义乌市网站制作网络营销策略名词解释
  • 高端品牌网站建设图片wordpress 资源站主题
  • 上海建设工程监督总站网站电商网站wordpress
  • 网站建设 医院菏泽网站建设熊掌号
  • 成都网站建设企业预约网免费建站流程
  • 网站建设胶州中国政务网站建设绩效评估
  • 合肥知名网站推广胶东国际机场建设有限公司网站
  • asp.ney旅游信息网站下载 简洁濮阳微信网站开发
  • 建设网站专业怎么上传网站程序到空间
  • 县城乡建设局网站微商城小程序哪个好
  • 博物馆门户网站建设优势重庆seo排名系统运营
  • 哪有app制作公司上海seo排名
  • 长沙建站seo公司北京招聘信息
  • 建设网站情况说明范文四川个人证书查询网官网
  • 推广学校网站怎么做公司可以做多个网站吗
  • 游戏网站后台建设郑州定制网站
  • 商务公司网站建设网站建设如何自学
  • 现在建网站可以拖拉式的吗中国国内最新新闻
  • phpstorm网站开发产品logo设计
  • 电子商务网站建设与运营什么是单页面网站
  • 西安优化网站公司南阳微信网站
  • 购物网站线下推广方案佛山快速建站哪家服务专业
  • 临沂网站排名外贸网站推广方法之一
  • 手机网站百度关键词排名查询吕梁网站制作吕梁安全
  • 做网站媒体wordpress管理员账号数据库添加
  • php如何自己做网站wordpress怎么修改编辑代码