LeetCode #221

Maximal Square

1개의 풀이 · C++

문제 원문 보기 ↗

SOLUTION INFO

C++ · main.cpp

main.cpp
class Solution {
public:
    int maximalSquare(vector<vector<char>>& matrix) {
        int N = (int)matrix.size(), M = (int)matrix[0].size();
        vector<vector<int>> DP(N + 1, vector<int>(M + 1));
        int ans = 0;
        for(int i = 0; i < N; ++i) {
            for(int j = 0; j < M; ++j) {
                if(matrix[i][j] == '1') {
                    DP[i + 1][j + 1] = 1 + min({DP[i][j + 1], DP[i + 1][j], DP[i][j]});
                }
                ans = max(ans, DP[i + 1][j + 1]);
            }
        }
        return ans * ans;
    }
};

SOLUTION DESCRIPTION

풀이 설명

등록된 풀이 설명이 없습니다.