# # 最大乘积,存在两种情况:a 3个正数; b 1个正数2个负数 # class Solution: def solve(self , A ): max1=max2=max3=float('-inf') min1=min2=float('inf') for i in A: if i>max3: if i>max2 and i>max1: max1,max2,max3=i,max1,max2 elif i>max2 and i<=max1: max2,max3=i,max2 else: max3=i if i<=min1: min1,min2=i,min1 elif i>min1 and i<min2: min2=i return max(max1*max2*max3,max1*min1*min2) # write code here