题目:
解析:
代码:
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
相关推荐
稚辉君.MCA_P8_Java10 分钟前
Gemini永久会员 Java动态规划小白程序员成长日记27 分钟前
2025.11.23 力扣每日一题16_one1 小时前
autoDL安装Open-WebUi+Rag本地知识库问答+Function Calling散峰而望2 小时前
C++数组(三)(算法竞赛)q***95223 小时前
SpringMVC 请求参数接收初级炼丹师(爱说实话版)3 小时前
多进程与多线程的优缺点及适用场景总结hetao17338373 小时前
2025-11-25~26 hetao1733837的刷题记录历程里程碑3 小时前
各种排序法大全少许极端3 小时前
算法奇妙屋(十四)-简单多状态dp问题2301_823438024 小时前
解析论文《复杂海上救援环境中无人机群的双阶段协作路径规划与任务分配》
