[๋ฐฑ์ค-1992] ์ฟผ๋ํธ๋ฆฌ / Python
๐ Problem Solving/Baekjoon
1992๋ฒ: ์ฟผ๋ํธ๋ฆฌ
์ฒซ์งธ ์ค์๋ ์์์ ํฌ๊ธฐ๋ฅผ ๋ํ๋ด๋ ์ซ์ N ์ด ์ฃผ์ด์ง๋ค. N ์ ์ธ์ ๋ 2์ ์ ๊ณฑ์๋ก ์ฃผ์ด์ง๋ฉฐ, 1 ≤ N ≤ 64์ ๋ฒ์๋ฅผ ๊ฐ์ง๋ค. ๋ ๋ฒ์งธ ์ค๋ถํฐ๋ ๊ธธ์ด N์ ๋ฌธ์์ด์ด N๊ฐ ๋ค์ด์จ๋ค. ๊ฐ ๋ฌธ์์ด์ 0 ๋
www.acmicpc.net
import sys
n = int(sys.stdin.readline())
data = [list(map(int, sys.stdin.readline().strip())) for _ in range(n)]
def quadtree(n, x, y):
check = data[x][y]
for i in range(x, x + n):
for j in range(y, y + n):
if check != data[i][j]:
print("(", end="")
quadtree(n // 2, x, y)
quadtree(n // 2, x, y + n // 2)
quadtree(n // 2, x + n // 2, y)
quadtree(n // 2, x + n // 2, y + n // 2)
print(")", end="")
return
if check == 0:
print("0", end="")
return
else:
print("1", end="")
return
quadtree(n, 0, 0)
ํด์ค
์ด์ ์ ํ์๋ ์ฌ๊ท ๋ฌธ์ ์ ๋น์ทํ ์ ํ์ด๋ค.
๊ดํธ ์์น๋ฅผ ์ด๋ป๊ฒ ์ฝ์ ํ๋์ง ๊ณ ๋ฏผ์ด์๋๋ฐ ์ฌ๊ทํจ์๋ฅผ ํธ์ถํ๋ ์๋ถ๋ถ๊ณผ ์๋๋ถ๋ถ์ ๊ดํธ๋ฅผ ์ฝ์ ํ๋ ํด๊ฒฐ๋๋ค!
์ฌ๊ท ๋ฌธ์ ๋ ์ต์ํ์ง ์์ ๋ ํ์ด๋ด์ผ๊ฒ ๋ค๐
'๐ Problem Solving > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค-2667] ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ / Python (0) | 2021.05.26 |
---|---|
[๋ฐฑ์ค-2630] ์์ข ์ด ๋ง๋ค๊ธฐ / Python (0) | 2021.05.26 |
[๋ฐฑ์ค-1927] ์ต์ ํ / Python (0) | 2021.05.25 |
[๋ฐฑ์ค-1780] ์ข ์ด์ ๊ฐ์ / Python (0) | 2021.05.25 |
[๋ฐฑ์ค-1676] ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ / Python (0) | 2021.05.25 |