北京公司网站建设价格舟山seo
难度:简单
给你一个下标从 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
。题解:
class Solution:def findMissingAndRepeatedValues(self, grid: List[List[int]]) -> List[int]:rep = 0 ## 重复元素miss = 0 ## 缺失元素res = []l = []for i in grid:for j in i:res.append(j)# print(res) ## 所有元素的列表n = len(res)for s in range(1,n+1):l.append(s)if res.count(s) > 1:rep = s ## 找到重复元素for k in l:if k not in res:miss = k ## 找到缺失元素return [rep,miss]