C++找出数组中元素最大值的乘积

给你一个整数数组 nums,请你选择数组的两个不同下标 i 和 j,使 (nums[i]-1)*(nums[j]-1) 取得最大值。 请你计算并返回该式的最大值。

//这道题我用的暴力求解的方式,直接对vector数组进行排序,然后对最后的两个数字进行相乘

class Solution

{

public:

    int maxProduct(vector<int> &nums)

    {

        sort(nums.begin(), nums.end());

        int m = 1;

        for (int i = nums.size()-2; i < nums.size(); ++i)

        {

            m *= nums[i]-1;

        }

        return m;

    }

};

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容