rueki
BOJ 1051. 숫자 정사각형 본문
728x90
반응형
https://www.acmicpc.net/problem/1051
1051번: 숫자 정사각형
N×M크기의 직사각형이 있다. 각 칸에는 한 자리 숫자가 적혀 있다. 이 직사각형에서 꼭짓점에 쓰여 있는 수가 모두 같은 가장 큰 정사각형을 찾는 프로그램을 작성하시오. 이때, 정사각형은 행
www.acmicpc.net
- 정사각형 최대 변은 가로, 세로 중 적은 길이가 최대값을 가지게 됨
- 변이 제일 짧은 경우부터 차례대로 정사각형 각 모서리 값을 비교
n, m = map(int, input().split())
arr = []
for i in range(n):
arr.append(list(input()))
max_sq = min(n, m)
ans = 0
for i in range(n):
for j in range(m):
for k in range(max_sq):
if ((i+k) < n) and ((j+k)<m) and (arr[i][j]== arr[i][j+k] == arr[i+k][j] == arr[i+k][j+k]):
ans = max(ans, (k+1)**2)
print(ans)
728x90
반응형
'python > 알고리즘 문제풀이' 카테고리의 다른 글
BOJ 1758. 알바생 강호 (0) | 2022.08.09 |
---|---|
BOJ 1331. 나이트 투어 (0) | 2022.08.07 |
LeetCode - 121. Best Time to Buy and Sell Stock (0) | 2020.08.31 |
SW Expert Academy 2001. 파리 퇴치 (0) | 2020.06.24 |
2005. 파스칼의 삼각형 (0) | 2020.06.20 |