Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 릿코드 파이썬
- 코틀린기초
- python priority queue
- LeetCode
- python Leetcode
- 릿코드풀이
- python sorted
- 릿코드 풀기
- 파이썬 알고리즘 풀기
- 파이썬알고리즘풀기
- python 릿코드
- 파이썬릿코드풀기
- python xor
- python 알고리즘
- 알고리즘풀이
- 알고리즘풀기
- 파이썬 릿코드
- 파이썬알고리즘
- leetcode풀기
- python zip_longest
- 파이썬 알고리즘
- binary search
- leetcode 풀기
- 파이썬 프로그래머스
- 상가수익률계산기
- 파이썬릿코드
- leetcode풀이
- 릿코드풀기
- 잇츠디모
- 릿코드
Archives
- Today
- Total
소프트웨어에 대한 모든 것
2373. Largest Local Values in a Matrix 본문
반응형
문제)
2373. Largest Local Values in a Matrix
You are given an n x n integer matrix grid.
Generate an integer matrix maxLocal of size (n - 2) x (n - 2) such that:
- maxLocal[i][j] is equal to the largest value of the 3 x 3 matrix in grid centered around row i + 1 and column j + 1.
In other words, we want to find the largest value in every contiguous 3 x 3 matrix in grid.
Return the generated matrix.
Example 1:
Input: grid = [[9,9,8,1],[5,6,2,6],[8,2,6,4],[6,2,2,2]]
Output: [[9,9],[8,6]]
Explanation: The diagram above shows the original matrix and the generated matrix.
Notice that each value in the generated matrix corresponds to the largest value of a contiguous 3 x 3 matrix in grid.
Example 2:
Input: grid = [[1,1,1,1,1],[1,1,1,1,1],[1,1,2,1,1],[1,1,1,1,1],[1,1,1,1,1]]
Output: [[2,2,2],[2,2,2],[2,2,2]]
Explanation: Notice that the 2 is contained within every contiguous 3 x 3 matrix in grid.
Constraints:
- n == grid.length == grid[i].length
- 3 <= n <= 100
- 1 <= grid[i][j] <= 100
솔루션1)
- Colvolution 개념이 들어간 문제
class Solution:
def largestLocal(self, grid: List[List[int]]) -> List[List[int]]:
row, col = len(grid), len(grid[0])
print(row, col)
ret = []
for r in range(0, row-2):
new_row = []
for c in range(0, col-2):
max_val = self.max_in_matrix(grid, r, c, r+2, c+2)
new_row.append(max_val)
ret.append(new_row)
return ret
def max_in_matrix(self, grid, row1, col1, row2, col2):
max_val = 0
for r in range(row1, row2+1):
for c in range(col1, col2+1):
max_val = max(max_val, grid[r][c])
return max_val
반응형
'알고리즘 > LeetCode' 카테고리의 다른 글
2367. Number of Arithmetic Triplets (0) | 2022.12.24 |
---|---|
2352. Equal Row and Column Pairs (0) | 2022.12.23 |
2325. Decode the Message (0) | 2022.12.23 |
1379. Find a Corresponding Node of a Binary Tree in a Clone of That Tree (2) | 2022.12.23 |
2265. Count Nodes Equal to Average of Subtree (0) | 2022.12.23 |
Comments