๐ค๋ฌธ์ ํด๊ฒฐ
์์ถ๋ฌธ์ ๋ฐฑ์ค์์๋ ๋น์ทํ ๋ฌธ์ ๋ฅผ ํ์ด๋ณธ์ ์ด ์๋ค.
๋ฆฌ์คํธ๋ฅผ ์ค์ ๋ก ์๋ฅด์ง ๋ง๊ณ ๋๋๋ ์ธ๋ฑ์ค๋ง ๊ตฌํด์ ํด๊ฒฐํ๋๊ฒ ์ข๋ค.
์ธ๋ฑ์ค๋ฅผ ๊ตฌํ ๋๋ ๋ค๋ชจ์ ์์์ ์ ์์น๋ง ๊ตฌํ๋ค. ๊ฑฐ๊ธฐ์ + ๋ค๋ชจ์ ๊ธธ์ด๋งํผ ํด์ฃผ๋ฉด ๋ค๋ชจ๋ฅผ ์์ฑ์ํด
์์์ ์ ๊ธฐ์ค์ผ๋ก ํ๋ฉด ์์ ๊ฒฝ์ฐ๋ 0, 0 ๊ทธ๋ฆฌ๊ณ ํฌ๊ธฐ๋ 8์ด๋ค.
๋ค์ 4๊ฐ์ง๋
- 0, 0, 4
- 0, 4, 4
- 4, 0, 4
- 4, 4, 4
๋ค์ ๋ค๋ชจ๋ ํฌ๊ธฐ๋ฅผ ์ ๋ฐ์ผ๋ก ๋๋๊ณ x์ ๋ํ๊ฑฐ๋ y์ ๋ํ๊ฑฐ๋ x์ y ๋๋ค ๋ํด์ ์์๊ฐ์ ๋ง๋ ๋ค.
๋ค์์ ์ด ๋ค๋ชจ๊ฐ ๋ชจ๋ ๊ฐ์ ์ซ์์ธ์ง ํ๋ณํ๋ ๊ฒ์ธ๋ฐ
๋ค๋ชจ์ค ํ๋์ ๊ฐ์ ์ด๊ธฐ๊ฐ์ผ๋ก ์ก๊ณ ๋ค๋ชจ์์ ๊ฐ์ ํ๋์ฉ ๋น๊ตํด๊ฐ๋ฉด์ ์ด๊ธฐ๊ฐ๊ณผ ๋ค๋ฅธ๊ฒ ํ๋๋ผ๋ ์์ผ๋ฉด ์์ถํ ์ ์์ผ๋ฏ๋ก ๋ ๊ทธ ๋ค๋ชจ๋ฅผ ์๋ผ์ค๋ค!
๐ป์์ค ์ฝ๋
def solution(arr):
answer = [0, 0]
N = len(arr)
def comp(x, y, n):
init = arr[x][y] # ํด๋น ๋ค๋ชจ๊ฐ์ค ํ๋ # ๋ชจ๋ ๊ฐ์์ผ ํต๊ณผ์
for i in range(x, x + n):
for j in range(y, y + n):
if arr[i][j] != init: # ํ๋ฒ์ด๋ผ๋ ๋ค๋ฅด๋ฉด ๊ทธ ๋ค๋ชจ๋ ์์ถ๋ถ๊ฐ
nn = n // 2
comp(x, y, nn)
comp(x, y + nn, nn)
comp(x + nn, y, nn)
comp(x + nn, y + nn, nn)
return
# ๋ฌด์ฌํ ๋ค ํต๊ณผํ๋ค๋ฉด ์์ถ๊ฐ๋ฅ
answer[init] += 1
comp(0, 0, N)
return answer
๐๋ฌธ์ ํ์ธ
์ถ์ฒ: ํ๋ก๊ทธ๋๋จธ์ค
๋งํฌ: https://programmers.co.kr/learn/courses/30/lessons/68936?language=python3
'Algorithm Problem > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[python] ๋ฐฑ์ค - 2512. ์์ฐ (0) | 2020.10.26 |
---|---|
[python] ๋ฐฑ์ค - 1874. ์คํ ์์ด (0) | 2020.10.25 |
[python] ํ๋ก๊ทธ๋๋จธ์ค - 3์ง๋ฒ ๋ค์ง๊ธฐ (์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง ์์ฆ1) (2) | 2020.10.22 |
[python] ๋ฐฑ์ค - 5430. AC (0) | 2020.10.18 |
[python] ๋ฐฑ์ค - 2004. ์กฐํฉ 0์ ๊ฐ์ (1) | 2020.10.17 |