Notice
250x250
Recent Posts
Recent Comments
Link
넘치게 채우기
[LeetCode] 2373. Largest Local Values in a Matrix 본문
728x90
반응형
https://leetcode.com/problems/largest-local-values-in-a-matrix/description/
leetcode - Largest Local Values in a Matrix
문제 유형 : 행렬, 구현
문제 난이도 : Easy
문제
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.
n x n 의 정수 행렬 grid가 있다.
정수 배열 maxLocal을 n-2 x n-2의 크기로 만들어라:
maxLocal[i][j]는 grid[i+1][j+1]을 기준으로 3 x 3부분행렬에서의 가장 큰 값으로 해라.
풀이
행과 열을 1 부터 n-1범위를 2차원배열로 반복하면서, 그 좌표기준 3x3의 최대 크기를 일일히 구해서 저장시키면 된다.
코드
C++
class Solution {
public:
int getMax(int i, int j, vector<vector<int>>& grid ) {
int maxVal = -1e9;
for(int row = i-1; row <= i+1; row++) {
for(int col = j-1; col <= j+1; col++) {
maxVal = max(maxVal, grid[row][col]);
}
}
return maxVal;
}
vector<vector<int>> largestLocal(vector<vector<int>>& grid) {
int n = grid.size();
vector<vector<int>> ans (n-2, vector<int>(n-2, -1e9));
for(int i = 1; i < n-1; i++) {
for(int j = 1; j < n-1; j++) {
ans[i-1][j-1] = getMax(i, j, grid);
}
}
return ans;
}
};
728x90
반응형
'PS > LeetCode' 카테고리의 다른 글
[LeetCode] 1219. Path with Maximum Gold (0) | 2024.05.14 |
---|---|
[LeetCode] 861. Score After Flipping Matrix (0) | 2024.05.13 |
[LeetCode] 857. Minimum Cost to Hire K Workers (0) | 2024.05.12 |
[LeetCode] 786. K-th Smallest Prime Fraction (0) | 2024.05.10 |
[LeetCode] 3075. Maximize Happiness of Selected Children (0) | 2024.05.09 |