题目:
解析:
代码:
javapublic int getMaxLen(int[] nums) { int n = nums.length; int[] f = new int[n+1]; int[] g = new int[n+1]; int ret = -0x3f3f3f3f; for(int i = 1; i <= n; i++){ if(nums[i-1] < 0){ f[i] = g[i-1] == 0 ? 0 : g[i-1] + 1; g[i] = f[i-1] + 1; } else if(nums[i-1] > 0) { g[i] = g[i-1] == 0 ? 0 : g[i-1] + 1; f[i] = f[i-1] + 1; } ret = Math.max(ret,f[i]); } return ret; }
动态规划子数组系列一>乘积为正数的最长子数组长度
robin_suli2024-11-20 12:02
相关推荐
千金裘换酒4 小时前
LeetCode 移动零元素 快慢指针wm10434 小时前
机器学习第二讲 KNN算法NAGNIP4 小时前
一文搞懂机器学习线性代数基础知识!NAGNIP4 小时前
机器学习入门概述一览iuu_star5 小时前
C语言数据结构-顺序查找、折半查找Yzzz-F5 小时前
P1558 色板游戏 [线段树 + 二进制状态压缩 + 懒标记区间重置]漫随流水5 小时前
leetcode算法(515.在每个树行中找最大值)mit6.8246 小时前
dfs|前后缀分解扫地的小何尚6 小时前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命千金裘换酒7 小时前
LeetCode反转链表
