竞赛题-6257. 删除每行中的最大值

news2025/2/23 23:49:50

题目:

给你一个 m x n 大小的矩阵 grid ,由若干正整数组成。

执行下述操作,直到 grid 变为空矩阵:

  • 从每一行删除值最大的元素。如果存在多个这样的值,删除其中任何一个。
  • 将删除元素中的最大值与答案相加。

注意 每执行一次操作,矩阵中列的数据就会减 1 。

返回执行上述操作后的答案。

示例 1:

image

输入:grid = [[1,2,4],[3,3,1]]
输出:8
解释:上图展示在每一步中需要移除的值。

  • 在第一步操作中,从第一行删除 4 ,从第二行删除 3(注意,有两个单元格中的值为 3 ,我们可以删除任一)。在答案上加 4 。
  • 在第二步操作中,从第一行删除 2 ,从第二行删除 3 。在答案上加 3 。
  • 在第三步操作中,从第一行删除 1 ,从第二行删除 1 。在答案上加 1 。
    最终,答案 = 4 + 3 + 1 = 8 。

示例 2:

image
输入:grid = [[10]]
输出:10
解释:上图展示在每一步中需要移除的值。

  • 在第一步操作中,从第一行删除 10 。在答案上加 10 。
    最终,答案 = 10 。

提示:

  • m == grid.length
  • n == grid[i].length
  • 1 <= m, n <= 50
  • 1 <= grid[i][j] <= 100

java代码:

class Solution {
    public int deleteGreatestValue(int[][] grid) {
        List<List<Integer>> list = new ArrayList<>();
        int m = grid.length;
        int n = grid[0].length;
        for(int i=0;i<m;i++) {
            List<Integer> subList = new ArrayList<>();
            for(int j=0;j<n;j++) {
                subList.add(grid[i][j]);
            }
            Collections.sort(subList);
            list.add(subList);
        }
        
        int res = 0;
        for(int i=n-1;i>=0;i--) {
            int max = 0;
            for(List<Integer> subList:list) {
                max = Math.max(subList.get(i), max);
            }
            res+=max;
        }
        return res;
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/81436.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]Python计算机毕业设计大型零售电商平台——购物车管理子系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

[附源码]Python计算机毕业设计SSM基于的砂石矿山管理系统(程序+LW)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

[Linux学习笔记] 浅谈信号(文章含不少学习资源)

百金买骏马,千金买美人,万金买爵禄,何处买青春? 目录 信号的概念 信号的种类: kill -l 命令可以查看信号列表 man 7 signal 查看信号详细内容 信号的产生 补充知识 Core Dump(转储内存) 补充知识:与信号相关的数据结构 对于不可靠信号 接收信号 信号的处理: 阻塞信号集: 未决信…

qt之QCustomPlot动态更改曲线数量,单光标查看数值,选中曲线单独显示查看趋势

一、前言 本博客介绍如何由浅入深的使用一些qcustomplot的用法&#xff0c;对于开源的qcustomplot来说&#xff0c;功能实在实在是太强大了&#xff0c;如果只用于显示简单的曲线真是太浪费前人的心血了&#xff0c;本文就来介绍一些好玩的用法&#xff0c;可以实现的功能有&am…

基于javaweb的学籍管理系统计算机专业毕业论文java毕业设计开题报告

&#x1f496;&#x1f496;更多项目资源&#xff0c;最下方联系我们✨✨✨✨✨✨ 目录 Java项目介绍 资料获取 Java项目介绍 计算机毕业设计java毕设之基于javaweb的学籍管理系统-IT实战营_哔哩哔哩_bilibili项目资料网址: http://itzygogogo.com软件下载地址:http://itzy…

论文笔记:Template-Based Named Entity Recognition Using BART

论文来源&#xff1a;ACL 2021 Finding 论文链接&#xff1a;https://aclanthology.org/2021.findings-acl.161.pdf 论文代码&#xff1a;GitHub - Nealcly/templateNER: Source code for template-based NER 笔记仅供参考&#xff0c;撰写不易&#xff0c;请勿恶意转载抄袭…

[附源码]Python计算机毕业设计大学生扶贫创业平台Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

[附源码]Python计算机毕业设计SSM基于的企业人事管理系统(程序+LW)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

【云计算与大数据技术】虚拟化技术、开源技术Xen、KVM、OpenVZ的讲解(图文解释 超详细)

一、系统虚拟化 系统虚拟化的核心思想是使用虚拟化软件在一台物理机上&#xff0c;虚拟出一台或多台虚拟机。步骤如下 利用虚拟化评估工具进行容量规划&#xff0c;实现同平台应用的资源整合&#xff1b; 首先采用容量规划工具决定每个系统的配置&#xff0c;利用虚拟化评估工…

【测绘程序设计】——潮汐调和分析

潮汐调和分析就是把某海面的潮位变化看成是许多分潮的余弦振动之和,根据最小二乘或频谱分析原理由实测数据计算出各个分潮平均振幅H和迟角g的过程。经典潮汐调和分析法有:Darwin分析法(频率成倍数的分潮看成一个分潮系)、Doodson分析法(周期相近的分潮看成一个分潮族)、现…

[附源码]Node.js计算机毕业设计大学生心理健康管理系统Express

项目运行 环境配置&#xff1a; Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境&#xff1a;最好是Nodejs最新版&#xff0c;我…

redis学习笔记(三)--项目实践过程遇到的问题

怎么保证缓存和数据库数据的一致性&#xff1f; 1. 设置缓存过期时间 2. 数据的更新操作&#xff0c;先删除缓存&#xff0c;再更新数据库。如果我们先更新数据库&#xff0c;会导致其他业务线程读到缓存中的脏数据&#xff0c;所以数据库的更新操作一般是先删缓存 3. 延时双…

整流桥-交流电整直流电-桥式整流电路-电路电子-嵌入式开发-物联网开发

一、概述 本文主要讲解整流二极管的应用&#xff0c;整流的方式常见的两种为半波整流电路、桥式整流电路。本文我们将围绕桥式整流电路进行阐述。 二、电路图 在嘉立创商城&#xff0c;我们可以看到很多封装好的元件&#xff1a; 不过&#xff0c;其本质电路中有些就是桥式整流…

安卓玩机搞机技巧综合资源---MIUI14全机型首版下载链接 刷机方法 获取root步骤【十二】

接上篇 安卓玩机搞机技巧综合资源------如何提取手机分区 小米机型代码分享等等 【一】 安卓玩机搞机技巧综合资源------开机英文提示解决dm-verity corruption your device is corrupt. 设备内部报错 AB分区等等【二】 安卓玩机搞机技巧综合资源------EROFS分区格式 小米红…

Redis实战——秒杀业务优化

我们来回顾一下下单流程 当用户发起请求&#xff0c;此时会请求nginx&#xff0c;nginx会访问到tomcat&#xff0c;而tomcat中的程序&#xff0c;会进行串行操作&#xff0c;分成如下几个步骤 1、查询优惠卷 2、判断秒杀库存是否足够 3、查询订单 4、校验是否是一人一单 …

新型海上风电机组及压缩空气储能系统的建模与控制(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️❤️&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f468;‍&#x1f393;博主课外兴趣&#xff1a;中西方哲学&#xff0c;送予读者&#xff1a; &#x1f468;‍&a…

node+vue基于微信小程序的货物管理系统 计算机毕业设计

随着Internet的发展&#xff0c;人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化、网络化和电子化。本文以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c;它主要是采用java语言技术、node框架和微信小程序来完成对系统的设计。…

CookieSession 学习笔记

1 Cookie 1.1 Cookie的基本使用 1 概念 客户端会话技术&#xff0c;将数据保存到客户端&#xff0c;以后每次请求都携带Cookie数据请求 2 工作流程 服务端Servlet可以将给response设置Cookie,这样浏览器接收到的数据中&#xff0c;就含有Cookie数据,下次请求时&#xff0c;会…

大数据期末课设~电商网站日志数据分析

目录 一、背景介绍... 1 二、大数据平台架构设计... 2 三、大数据平台系统设计... 7 四、数据分析与达成目标... 11 五、Spark综合编程与python可视化... 33 六、总结与体会... 50 一、背景介绍 一般情况下&#xff0c;大数据平台指的是使用了Hadoop、Spark、Storm、Fli…

可交易性(tradability)检验即协整性检验:线性关系

两个时间序列的线性关系表示为&#xff1a; 左边是两个时间序列的线性组合。是协整系数。 右边是残差序列&#xff08;residual series),表示为由两部分组成。是均衡值&#xff08;equilibrium value&#xff09;&#xff0c;是一个均值为0的时间序列&#xff0c;可以构造为均…