题解 | #连续子数组的最大乘积#

连续子数组的最大乘积

http://www.nowcoder.com/practice/fd8c819c07c9493887bfac8549c119f4

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(new BufferedInputStream(System.in));
        int n = scan.nextInt();
        int[] nums = new int[n];
        for (int i = 0; i < n; i++)
            nums[i] = scan.nextInt();
        int preMax = 1;
        int preMin = 1;
        int res = (int)-1e9;
        for (int num: nums) {
            int a = preMax * num, b = preMin * num;
            preMax = Math.max(Math.max(a, b), num);
            preMin = Math.min(Math.min(a, b), num);
            res = Math.max(preMax, res);
        }
        System.out.println(res);
    }
}
全部评论

相关推荐

2025-12-27 22:14
门头沟学院 Java
点赞 评论 收藏
分享
2025-11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
2025-11-13 12:02
门头沟学院 Java
我要娶个什么名:好骂,好骂 别学计算机就行了
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务