深圳网站建设找哪家,花的网页设计模板素材,网站建设公司有哪些方面,网站调用接口怎么做目录链接#xff1a;
力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目#xff1a;
https://github.com/September26/java-algorithms 原题链接#xff1a;力扣 描述#xff1a;
给你一个下标从 0 开始的二维整数数组 nums 。一开始你的分数为 0 。你需要执行…目录链接
力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目
https://github.com/September26/java-algorithms 原题链接力扣 描述
给你一个下标从 0 开始的二维整数数组 nums 。一开始你的分数为 0 。你需要执行以下操作直到矩阵变为空
矩阵中每一行选取最大的一个数并删除它。如果一行中有多个最大的数选择任意一个并删除。在步骤 1 删除的所有数字中找到最大的一个数字将它添加到你的 分数 中。
请你返回最后的 分数 。 示例 1
输入nums [[7,2,1],[6,4,2],[6,5,3],[3,2,1]]
输出15
解释第一步操作中我们删除 7 6 6 和 3 将分数增加 7 。下一步操作中删除 2 4 5 和 2 将分数增加 5 。最后删除 1 2 3 和 1 将分数增加 3 。所以总得分为 7 5 3 15 。示例 2
输入nums [[1]]
输出1
解释我们删除 1 并将分数增加 1 所以返回 1 。 提示
1 nums.length 3001 nums[i].length 5000 nums[i][j] 103 解题思路
/**
* 2679. 矩阵中的和
* 解题思路
* 对nums中的所有子数组从大到小排序。
* 然后对于矩阵从左向右遍历每列取最大值加入sum即可
*/ 代码
class Solution2679
{
public:int matrixSum(vectorvectorint nums){for (int i 0; i nums.size(); i){sort(nums[i].begin(), nums[i].end(), [](int i1, int i2){ return i1 i2; });}int sum 0;for (int i 0; i nums[0].size(); i){int max 0;for (int j 0; j nums.size(); j){max max nums[j][i] ? max : nums[j][i];}sum max;}return sum;}
};