접근
바로 이전 2063번 색종이 만들기 문제와 매우 비슷하고, 그 표현 방법만 바꿔서 넣어주면 되겠다.
2021.04.01 - [코딩/백준 (Python)] - 백준 2630번: 색종이 만들기 (Python)
코드
import sys
n = int(sys.stdin.readline())
board = []
for _ in range(n):
board.append(list(sys.stdin.readline().rstrip()))
compression = []
def cut(x, y, n):
check = board[x][y]
for i in range(x, x + n):
for j in range(y, y + n):
if check != board[i][j]:
compression.append('(')
cut(x, y, n // 2)
cut(x, y + n // 2, n // 2)
cut(x + n // 2, y, n // 2)
cut(x + n // 2, y + n // 2, n // 2)
compression.append(')')
return
if check == '0':
compression.append('0')
return
else:
compression.append('1')
return
cut(0, 0, n)
print(''.join(compression))
더 생각해 볼 것?
...
코드나 내용 관련 조언, 부족한 점 및 질문 언제든 환영합니다!
반응형
'코딩 > 백준 (Python)' 카테고리의 다른 글
백준 11401번: 이항 계수 3 (Python) (0) | 2021.04.02 |
---|---|
백준 1780번: 종이의 개수 (Python) (0) | 2021.04.01 |
백준 2630번: 색종이 만들기 (Python) (0) | 2021.04.01 |
백준 5430번: AC (Python) (0) | 2021.04.01 |
백준 19298번: 오큰수 (Python) (0) | 2021.04.01 |
최근댓글