题目:
解析:
代码:
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
相关推荐
mit6.82414 小时前
博弈dp|凸包|math分类Shinom1ya_14 小时前
算法 day 41hetao173383715 小时前
2025-10-30 ZYZOJ Star(斯达)模拟赛 hetao1733837的record无敌最俊朗@15 小时前
C++ 值类别与移动语义详解(精简版)lingran__15 小时前
算法沉淀第十一天(序列异或)一匹电信狗16 小时前
【C++】红黑树详解(2w字详解)寂静山林16 小时前
UVa 11853 PaintballTheodore_102217 小时前
深度学习(10)模型评估、训练与选择五条凪17 小时前
Verilog-Eval-v1基准测试集搭建指南是店小二呀17 小时前
从“算法思维”到“算子思维”:我在昇腾AI开发中的认知跃迁
