给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j,使 (nums[i]-1)*(nums[j]-1) 取得最大值。
请你计算并返回该式的最大值
排序之后最后两个元素的乘积即为最大
int cmp(const void *pa, const void *pb) {
return *(int *)pa - *(int *)pb;
}
int maxProduct(int* nums, int numsSize) {
qsort(nums,numsSize,sizeof(int),cmp);
return (nums[numsSize-1]-1)*(nums[numsSize-2]-1);
}
python方法
def maxProduct(self, nums: List[int]) -> int:
nums.sort()
return (nums[-1]-1)*(nums[-2]-1)
t
505

被折叠的 条评论
为什么被折叠?



