题解 | #三个数的最大乘积#
三个数的最大乘积
https://www.nowcoder.com/practice/8ae05c2913fe438b8b14f3968f64fc0b
class Solution {
public:
long long solve(vector<int>& A) {
// write code here
int n = A.size();
sort(A.begin(), A.end());
long max = (long)A[n - 1] *(long)A[n - 2]* (long)A[n - 3];
if(A[0] < 0 && A[1] < 0 &&(long)A[0] *(long)A[1] * (long)A[n - 1] > max){
max = (long)A[0] * (long)A[1] * (long)A[n - 1];
}
return max;
}
};
//虽然方法是n*logn的但是还是有几个要注意的,当int型整数进行相乘时,会返回的是一个int型,如果会超出范围者返回一个奇奇怪怪的数,有可能是随机数,所以但凡遇到那些int型相乘结果是给max赋值或者比较的时候一定得强转
顺丰集团工作强度 350人发布
查看11道真题和解析