[백준 ] 1051번 숫자 정사각형

dev-log·2022년 4월 14일
n,m=map(int,input().split())

maxi=min(n,m)
answer=1
rectangle=[]
for _ in range(n):
    rectangle.append(input())

for i in range(1,maxi):
    for j in range(n):
        for k in range(m):
            x,y=j,k
            rx,ry=x,y+i
            dx,dy=x+i,y
            cx,cy=x+i,y+i

            if x<0 or x>=n or rx<0 or rx>=n or dx<0 or dx>=n or cx<0 or cx>=n:
                continue
            if y<0 or y>=m or ry<0 or ry>=m or dy<0 or dy>=m or cy<0 or cy>=m:
                continue    
        
            if rectangle[x][y]==rectangle[rx][ry] and rectangle[rx][ry]==rectangle[dx][dy] and rectangle[dx][dy]==rectangle[cx][cy]:
                    answer=(i+1)*(i+1)

print(answer)
profile
배운 걸 기록하는 곳입니다.

0개의 댓글