반응형
문제
https://www.acmicpc.net/problem/1992
이전 문제와 비슷하다.
출력부분과 각 각 4사분면의 순서가 중요하다. 차례대로 출력하여야한다.
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 31 32 33 | import sys n=int(sys.stdin.readline()) video=[list(map(int,sys.stdin.readline().strip())) for _ in range(n)]#x행 y열 def compression(x,y,n): check=video[x][y] for i in range(x,x+n): for j in range(y,y+n): if check!=video[i][j]:#하나라도 다르면 #4등분 print('(', end='') compression(x,y,n//2)#1사분면 compression(x,y+n//2,n//2) #2사분면 compression(x+n//2,y,n//2) #3사분면 compression(x+n//2,y+n//2,n//2)#4사분면 print(')', end='') return if check==0:#모두 0일때 print('0',end='') return else: #모두 1일때 print('1',end='') return compression(0,0,n) | cs |
반응형
'알고리즘(python) > 기본' 카테고리의 다른 글
[Python]분할정복 백준 1629 (0) | 2020.01.26 |
---|---|
[Python]분할정복 백준 1780 (0) | 2020.01.24 |
[Python]분할정복 백준 2630 (0) | 2020.01.23 |
[Python]그리디 알고리즘 백준 1541 (0) | 2020.01.14 |
[Python]그리디 알고리즘 백준 11399 (0) | 2020.01.14 |
최근댓글