力扣刷题--2965. 找出缺失和重复的数字【简单】

题目描述

给你一个下标从 0 开始的二维整数矩阵 grid,大小为 n * n ,其中的值在 [1, n2] 范围内。除了 a 出现 两次,b 缺失 之外,每个整数都 恰好出现一次 。

任务是找出重复的数字a 和缺失的数字 b 。

返回一个下标从 0 开始、长度为 2 的整数数组 ans ,其中 ans[0] 等于 a ,ans[1] 等于 b 。

示例 1:

输入:grid = [[1,3],[2,2]]
输出:[2,4]
解释:数字 2 重复,数字 4 缺失,所以答案是 [2,4] 。
示例 2:

输入:grid = [[9,1,7],[8,9,2],[3,4,6]]
输出:[9,5]
解释:数字 9 重复,数字 5 缺失,所以答案是 [9,5] 。

提示:

2 <= n == grid.length == grid[i].length <= 50
1 <= grid[i][j] <= n * n
对于所有满足1 <= x <= n * n 的 x ,恰好存在一个 x 与矩阵中的任何成员都不相等。
对于所有满足1 <= x <= n * n 的 x ,恰好存在一个 x 与矩阵中的两个成员相等。
除上述的两个之外,对于所有满足1 <= x <= n * n 的 x ,都恰好存在一对 i, j 满足 0 <= i, j <= n - 1 且 grid[i][j] == x 。

算法分析

先把二维数组的值全部放入一个一维数组当中,然后排序,如果相邻元素相等,就是重复的数字,然后遍历1-n*n中的数字,看他是否在一维数组当中。

完整代码

class Solution {
public:vector<int> findMissingAndRepeatedValues(vector<vector<int>>& grid) {vector<int>arr;vector<int>ans;int n=grid.size();for(int i=0;i<n;i++){for(int j=0;j<n;j++)arr.push_back(grid[i][j]);  }sort(arr.begin(),arr.end());//重复的数字for(int i=0;i+1<arr.size();i++){if(arr[i]==arr[i+1])ans.push_back(arr[i]);}//丢失的数字for(int i=1;i<=n*n;i++){if(find(arr.begin(),arr.end(),i)==arr.end())ans.push_back(i);}return ans;}
};

在这里插入图片描述

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

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

相关文章

SNP数据转型解析:云服务在现代企业数字化转型的必要性

为什么当今的企业想为数字化工作环境做好准备并保持竞争力&#xff0c;很难避免使用云服务呢&#xff1f; 要理解为什么企业没有云的替代选择&#xff0c;我们需要了解云服务的含义 - 它不仅仅指存储数据的另一个位置。各种云模型提供了极大的灵活性&#xff0c;可以根据需要操…

第三方软件测试机构进行代码审计需要哪些专业的知识?

代码审计 进行代码审计需要专业的知识&#xff0c;包括编程语言、操作系统、数据库、网络知识以及安全知识等。 1.编程语言知识是进行代码审计的基础&#xff0c;因为你需要理解代码的语法和结构。对于不同的应用程序&#xff0c;你需要了解其所使用的编程语言的特点和语法规…

揭开Java序列化的神秘面纱(下)Serializable源码剖析

在上一篇文章中我们明白了 Serializable 的大致用法。感兴趣的朋友&#xff0c;请前往查阅。揭开Java序列化的神秘面纱&#xff08;上&#xff09;Serializable使用详解。 本篇文章重点关注 Serializable 序列化的实现 &#xff0c;一切从源头说起&#xff0c;Java序列化的设计…

ue5 后期处理体积lut如何加入

零、需要颜色查找表格&#xff0c;ps 一、ps中 把调节好的shift 一起拖入颜色查找表格 二、存储为png格式 另存为 保护好原来的颜色查找表格 三、导入ue5中 四、在后期处理体积中搜索misc 替换颜色查找表格 五、双击后期处理体积 纹理组替换颜色查找表格 2. 压缩设置lut改成…

Java常见集合类三(Map,HashMap put 方法详解)

一、Map 接口概述 Map 中存放键值对的 key 是唯一的&#xff0c;value 是可以重复的&#xff1b; Map 中的 key 可以全部分离出来&#xff0c;存储到 Set 中来进行访问 (因为 key 不能重复)&#xff1b; Map 中的 value 也可以全部分离出来&#xff0c;存储在 Collection 的任…

2024 全新 Javascript 面试题目高级篇

今天是咱们Javascript面试题的高级篇&#xff0c;也是最后一篇。 20. 执行上下文、执行栈、变量对象和作用域链究竟是啥&#xff1f; 执行上下文&#xff1a;这指的是代码执行的环境&#xff0c;包括作用域、变量对象以及“this”关键字的值。每当一个函数被执行时&#xff0…

中文金融大语言模型:专业、智能、全面,一站式金融解决方案,你的专属LLM金融顾问

中文金融大语言模型&#xff1a;专业、智能、全面&#xff0c;一站式金融解决方案&#xff0c;你的专属LLM金融顾问 DISC-FinLLM 是一个专门针对金融场景下为用户提供专业、智能、全面的金融咨询服务的金融领域大模型&#xff0c; 资料下载&#xff1a;https://download.csdn.…

Go 高级日志记录库集成Gin框架

一、简介 Logrus是Go&#xff08;golang&#xff09;的结构化logger&#xff0c;与标准库logger完全API兼容&#xff0c;它有以下特点 结构化日志记录&#xff1a;Logrus 支持生成结构化的日志条目&#xff0c;这意味着日志不仅仅是文本字符串&#xff0c;而是包含键值对的数据…

Ceph 高级部署

一、基础环境配置 1.1 网络配置 ubuntu: network: ethernets:eno1:dhcp4: trueeno2:dhcp4: trueeno3:dhcp4: trueeno4:dhcp4: truebonds:bond0:addresses:- 100.64.0.12/22routes:- to: defaultvia: 100.64.0.1nameservers:addresses:- 114.114.114.114interfaces:- eno1- …

TTime:截图翻译/OCR

日常网页翻译Translate Web Pages完全足够&#xff0c;TTime最重要的功能&#xff0c;还是截图翻译&#xff0c;还有个厉害的功能&#xff0c;就是静默OCR&#xff0c;相比之前的分享的识字精灵效率更高。 软件使用 打开软件&#xff0c;点击翻译源设置&#xff0c;建议勾选一…

强化学习学习笔记-李宏毅

Policy Gradient actorenvreward function&#xff0c;env和reward是不能控制的&#xff0c;唯一可以变的是actor&#xff0c;Policy π \pi π是一个网络&#xff0c;参数为 θ \theta θ&#xff0c;输入是当前的观察&#xff0c;输出是采取的行为&#xff0c;例如游戏中输…

C++可变参技巧揭秘:从函数到模板,一网打尽

最近在用C开发项目过程中&#xff0c;遇到了场景需要用可变参&#xff08;...&#xff09;的情况&#xff0c;发现开发业务相关同事&#xff0c;对这块理解不是很清晰&#xff0c;遂对此进行梳理总结&#xff0c;以便业务相关同事学习&#xff0c;以及后续遇到时的参考。 对此不…

第十三期Big Demo Day亮点项目:CCarbon重塑碳交易生态,助力全球绿色发展

第十三期Big Demo Day活动即将于2024年5月28日在香港数码港的CyberArena隆重举行。我们荣幸地宣布&#xff0c;利用区块链技术优化全球碳交易CCarbon项目将亮相&#xff0c;参与精彩的项目路演。本次活动由ZeeprLabs、BiKing Exchange、Gather冠名赞助&#xff0c;Central Rese…

DOS学习-目录与文件应用操作经典案例-ren

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一.前言 二.使用 三.案例 案例 1&#xff1a;重命名当前目录下的文件 案例 2&#xff1a…

自定义函数与结构体

定义一个结构体 Point&#xff0c;其中包含两个 double 类型的成员 x 和 y&#xff0c;用来表示一个二维坐标点。接着定义一个函数 dist&#xff0c;用来计算两个点之间的欧几里德距离。 在函数中&#xff0c;通过调用 hypot 函数来计算两点之间的距离&#xff0c;C 中的hypot…

超清高帧,成像升级 | SWIR短波红外相机500万像素992芯片

博图光电5MP短波红外相机&#xff0c;搭载了索尼IMX992 SenSWIR传感器&#xff0c;支持5.2MP分辨率&#xff0c;适合探测波长在400nm-1700nm波段的可见光和短波红外光&#xff0c;有效面积和透光率得到提升&#xff0c;内置TEC制冷片&#xff0c;实现了像素尺寸和图像均匀性方面…

OSPF不规则区域

一、OSPF不规则区域 1、远离了骨干的非骨干 2、不连续骨干 解决目的--全网可达 解决方案: 1、tunnel-- 在合法与非法 ABR 间使用 tunnel建立一个新的网段(类似连接一条独立的网线);然后将该网段宣告到ospf协议中; 缺点: 1)选路不佳 2)周期和触发信息对中间穿越区域造成影响…

网络实时安全:构筑数字时代的铜墙铁壁

什么是网络实时安全&#xff1f; 网络实时安全&#xff0c;简而言之&#xff0c;是一种能够在威胁发生的瞬间即刻识别、响应并有效抵御的安全机制。它强调的是速度与效率&#xff0c;确保网络环境能够持续处于安全状态。这背后&#xff0c;离不开高科技的支撑——扩展检测系统…

Linux源码编译安装MySQL + Qt连接MySQL

一、准备工作 1. 编译环境&#xff1a; 银河麒麟V10 飞腾D2000 CPU 2. 下载MySQL源码 这里编译的是5.7.44版本&#xff0c;带Boost库&#xff0c;这是官网的下载地址&#xff1a;MySQL :: Download MySQL Community Server (Archived Versions) 3. 解压压缩包 tar -zxvf mys…

Python内置方法串讲:类型转化与实用技巧

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、类型转化&#xff1a;从A到B的魔法 二、实用技巧&#xff1a;避免类型错误 三、总结 一…