题目:
解析:
代码:
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
相关推荐
FPGA18 分钟前
CRC校验原理及其FPGA实现Jina AI26 分钟前
回归C++: 在GGUF上构建高效的向量模型Coovally AI模型快速验证31 分钟前
YOLO、DarkNet和深度学习如何让自动驾驶看得清?luoqice37 分钟前
linux下找到指定目录下最新日期log文件楽码1 小时前
底层技术SwissTable的实现对比fffcccc11121 小时前
初级背包问题,层层剖析为什么这样做。最好需要自己推演一遍。瓦特what?2 小时前
关于C++的#include的超超超详细讲解楽码3 小时前
自动修复GoVet:语言实现对比杰克尼3 小时前
415. 字符串相加lifallen3 小时前
JCTools 无锁并发队列基础:ConcurrentCircularArrayQueue