[๋ฐฑ์ค-2630] ์์ข
์ด ๋ง๋ค๊ธฐ / Python
๐ Problem Solving/Baekjoon
2630๋ฒ: ์์ข ์ด ๋ง๋ค๊ธฐ
์ฒซ์งธ ์ค์๋ ์ ์ฒด ์ข ์ด์ ํ ๋ณ์ ๊ธธ์ด N์ด ์ฃผ์ด์ ธ ์๋ค. N์ 2, 4, 8, 16, 32, 64, 128 ์ค ํ๋์ด๋ค. ์์ข ์ด์ ๊ฐ ๊ฐ๋ก์ค์ ์ ์ฌ๊ฐํ์นธ๋ค์ ์์ด ์์ค๋ถํฐ ์ฐจ๋ก๋ก ๋์งธ ์ค๋ถํฐ ๋ง์ง๋ง ์ค๊น์ง ์ฃผ์ด์ง๋ค.
www.acmicpc.net
import sys
n = int(sys.stdin.readline())
paper = [list(map(int, sys.stdin.readline().split())) for _ in range(n)]
white, blue = 0, 0
def divide(n, x, y):
global white, blue
check = paper[x][y]
for i in range(x, x + n):
for j in range(y, y + n):
if check != paper[i][j]:
divide(n // 2, x, y)
divide(n // 2, x, y + n // 2)
divide(n // 2, x + n // 2, y)
divide(n // 2, x + n // 2, y + n // 2)
return
if check == 0:
white += 1
else:
blue += 1
divide(n, 0, 0)
print(white)
print(blue)
ํด์ค
์ด์ ํ์๋ ์ฌ๊ท ๋ฌธ์ ์ ๋น์ทํ ์ ํ! ์ด์ ์ด๋์ ๋ ๋ฅ์ํ๊ฒ ํ ์ ์๊ฒ ๋์๋ค..๐
'๐ Problem Solving > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค-5525] IOIOI / Python (0) | 2021.05.26 |
---|---|
[๋ฐฑ์ค-2667] ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ / Python (0) | 2021.05.26 |
[๋ฐฑ์ค-1992] ์ฟผ๋ํธ๋ฆฌ / Python (0) | 2021.05.25 |
[๋ฐฑ์ค-1927] ์ต์ ํ / Python (0) | 2021.05.25 |
[๋ฐฑ์ค-1780] ์ข ์ด์ ๊ฐ์ / Python (0) | 2021.05.25 |