반응형

   문제

   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



반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기