首页 > 连续子数组的最大乘积
头像 假装坏
发表于 2022-02-12 16:15:35
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * @param nums int整型vector * @return int整型 */ int maxP 展开全文
头像 LourisXu
发表于 2022-05-07 16:21:33
线性DP 设pos[i]为以i为结尾的子数组的最大乘积,neg[i]为以i为结尾的子数组的最小乘积,状态转移方程见代码。 时间复杂度:O(n)O(n)O(n) 空间复杂度:O(n)O(n)O(n) class Solution { public: /** * 代码中的类名、方法名、 展开全文
头像 牛客869693901号
发表于 2022-04-03 18:03:31
此题可以使用一种巧妙的解法: 首先0是一个分界点,如果在遍历数组过程中遇到0,那么最大乘积需要重新计算 此外此题的nums中会出现负数,如果出现负数只有两种情况: 有偶数个负数: 在这种情况下最大乘积即为所有数的乘积(除去0的情况) 有奇数个负数: 在这种情况下某一个未知的负数会成为分界点, 展开全文
头像
发表于 2024-12-11 19:32:09
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * 展开全文
头像 17c89
发表于 2024-06-18 19:49:53
import java.util.*; /** * NC83 连续子数组的最大乘积 * @author d3y1 */ public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 展开全文
头像 总之就是非常可爱
发表于 2022-02-27 14:33:13
class Solution { public:     /**      * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可      *      *  展开全文
头像 我和我
发表于 2022-02-11 21:54:27
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @return int整型 */ 展开全文
头像 奶ve
发表于 2024-05-11 17:07:22
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型vector * @return int整型 展开全文
头像 wkkw
发表于 2022-03-26 12:29:04
这个题是两个子问题合在一起 因为存在负数,而且负负得正。那么dp[i]不能只存一个数,而是以位置i结尾的最大值跟最小值 所以拆分一下,分成两个数组。一个dp_max存位置i结尾的最大乘积,一个dp_min存位置i结尾的最小乘积 dp_max[i] 为前一位置dp_max[i] 或者 展开全文
头像 何成HN
发表于 2025-12-26 16:29:03
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param nums int整型一维数组 # @return int整型 # class Solution: def maxProduct(self , nums: List[int]) -& 展开全文

等你来战

查看全部