티스토리 뷰

알고리즘/BOJ

[BOJ-1915] 가장 큰 정사각형

개발하는 후딘 2020. 4. 20. 23:48
728x90
반응형

 

https://www.acmicpc.net/problem/1915

 

1915번: 가장 큰 정사각형

첫째 줄에 n, m(1 ≤ n, m ≤ 1,000)이 주어진다. 다음 n개의 줄에는 m개의 숫자로 배열이 주어진다.

www.acmicpc.net


[풀이]

 

프로그래머스 가장큰 정사각형 풀이를 참고하면 됩니다.

2020/04/20 - [알고리즘/Programmers] - [프로그래머스] 가장 큰 정사각형

 

[프로그래머스] 가장 큰 정사각형

https://programmers.co.kr/learn/courses/30/lessons/12905 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업..

ek12mv2.tistory.com


[코드]

import sys
from copy import deepcopy
input=sys.stdin.readline

# n: 행, m:열
n,m = map(int, input().strip().split())
A=[ [*map(lambda x: 0 if x=='0' else 1 ,input().strip())] for _ in range(n)]
DP=deepcopy(A)

max_len=max(A[0])
for row in range(1,n):
    for col in range(1,m):
        if A[row][col]==1:
            # (row-1,col-1), (row-1, col), (row, col-1) 이 모두 1인지 확인
            if (A[row-1][col-1]==1) and (A[row][col-1]==1) and (A[row-1][col]==1):
                #길이를 구한다.
                DP[row][col]=min(DP[row-1][col-1], DP[row-1][col], DP[row][col-1])+1
                
                # 가장큰 정사각형의 길이를 구한다.
                max_len=max(max_len, DP[row][col])

print(max_len**2)
728x90
반응형

'알고리즘 > BOJ' 카테고리의 다른 글

[BOJ-1937] 욕심쟁이 판다  (0) 2020.04.24
[BOJ-2583] 영역구하기  (0) 2020.04.23
[BOJ-1339] 단어수학  (0) 2020.04.19
[BOJ-1987] 알파벳  (0) 2020.04.19
[BOJ-2096] 내려가기  (0) 2020.04.19
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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
글 보관함