题解 | #三个数的最大乘积#
三个数的最大乘积
http://www.nowcoder.com/practice/8ae05c2913fe438b8b14f3968f64fc0b
/** * 最大乘积 * @param A int整型一维数组 * @param ALen int A数组长度 * @return long长整型 */ long long solve(int* A, int ALen ) { // write code here long long min1=10001,min2=10001; long long max1= -10001,max2=-10001,max3=-10001; for(int i=0;i<ALen;i++) { if(A[i]<min1) { min2=min1; min1=A[i]; }else if (A[i] < min2) { min2=A[i]; } if(A[i]>max1) { max3=max2; max2=max1; max1=A[i]; }else if(A[i] > max2) { max3=max2; max2=A[i]; }else if(A[i] > max3) { max3=A[i]; } } return (max1*max2*max3) > (min1*min2*max1) ? max1*max2*max3 : min1*min2*max1 ; }