1. 程式人生 > >628-三個數的最大乘積

628-三個數的最大乘積

輸入 mat class max 組成 bsp pri lse 示例

給定一個整型數組,在數組中找出由三個數組成的最大乘積,並輸出這個乘積。

示例 1:

輸入: [1,2,3]
輸出: 6
示例 2:

輸入: [1,2,3,4]
輸出: 24

 public static int maximumProduct(int[] nums) {
        if (nums.length<3)
            return 0;
        int max1=-1000,max2=-1000,max3=-1000;
        int min1=1000,min2=1000;
        int i=0;
        while
(i<nums.length) { if (nums[i]>=max1) { max3=max2; max2=max1; max1=nums[i]; }else if (nums[i]>=max2){ max3=max2; max2=nums[i]; }else if (nums[i]>=max3){ max3
=nums[i]; } if (nums[i]<=min1) { min2=min1; min1=nums[i]; }else if (nums[i]<=min2){ min2=nums[i]; } i++; } System.out.println(max1); System.out.println(max2); System.out.println(max3); System.out.println(min1); System.out.println(min2);
return Math.max(max1*max2*max3,max1*min1*min2); }

628-三個數的最大乘積