diff --git "a/ksinji/202601/23 PGM \352\260\200\354\236\245 \355\201\260 \354\240\225\354\202\254\352\260\201\355\230\225 \354\260\276\352\270\260.md" "b/ksinji/202601/23 PGM \352\260\200\354\236\245 \355\201\260 \354\240\225\354\202\254\352\260\201\355\230\225 \354\260\276\352\270\260.md" new file mode 100644 index 00000000..8ffb3e3b --- /dev/null +++ "b/ksinji/202601/23 PGM \352\260\200\354\236\245 \355\201\260 \354\240\225\354\202\254\352\260\201\355\230\225 \354\260\276\352\270\260.md" @@ -0,0 +1,26 @@ +```java +class Solution { + public int solution(int[][] board) { + int n = board.length; + int m = board[0].length; + + int[][] dp = new int[n][m]; + int max = 0; + + for (int i = 0; i < n; i++) { + for (int j = 0; j < m; j++) { + if (board[i][j] == 1) { + if (i == 0 || j == 0) { + dp[i][j] = 1; + } else { + dp[i][j] = Math.min(Math.min(dp[i-1][j], dp[i][j-1]),dp[i-1][j-1])+1; + } + max = Math.max(max, dp[i][j]); + } + } + } + + return max * max; + } +} +```