[백준] #2630 색종이 만들기 python
2023. 5. 19. 10:35
https://www.acmicpc.net/problem/2630
📕 설명 📕
divide and conquer 방법을 사용하였다.
🧑🏻💻 나의 풀이 🧑🏻💻
import sys
def divide_conquer(x, y, N):
global cut, blue
color = paper[x][y]
for i in range(x, x + N):
for j in range(y, y + N):
if color != paper[i][j]:
divide_conquer(x, y, N // 2)
divide_conquer(x, y + N // 2, N // 2)
divide_conquer(x + N // 2, y, N // 2)
divide_conquer(x + N // 2, y + N // 2, N // 2)
return 0
if color == 0:
cut += 1
else:
blue += 1
if __name__ == '__main__':
N = int(sys.stdin.readline())
paper = list(list(map(int, sys.stdin.readline().split())) for _ in range(N))
cut, blue = 0, 0
divide_conquer(cut, blue, N)
print(cut)
print(blue)
'Programming > Algorithm' 카테고리의 다른 글
[백준] #1235 학생 번호 python (0) | 2023.05.23 |
---|---|
[백준] #1251 단어 나누기 python (0) | 2023.05.22 |
[백준] #1780 종이의 개수 python (0) | 2023.05.18 |
[백준] #2161 카드1 python (0) | 2023.05.17 |
[백준] #1309 동물원 python (0) | 2023.05.16 |