def solution(n):
answer = []
mtx = [[0]*(i+1) for i in range(n)]
i = -1
j = 0
num = 0
while True:
for _ in range(n):
num += 1
i += 1
mtx[i][j] = num
n -= 1
if n == 0:
break
for _ in range(n):
num += 1
j += 1
mtx[i][j] = num
n -= 1
if n == 0:
break
for _ in range(n):
i -= 1
j -= 1
num += 1
mtx[i][j] = num
n -= 1
if n == 0:
break
for i in mtx:
for j in i:
answer.append(j)
return answer
โท ๊ฐ์ฅ ์์ ์์นํ ๊ผญ์ง์ ์ ๊ธฐ์ค์ผ๋ก ํ ๋๋ฆฌ์ ํ ๋น๋๋ ์ซ์๋ ์ฃผ์ด์ง n์์ ํ๋์ฉ ์ค์ด๋๋ ๊ท์น์ ๊ฐ์ง๊ณ ์๋ค. ์๋ฅผ ๋ค์ด, ์ผ์ชฝ ์ ์ฒซ ๋ฒ์งธ ํ ๋๋ฆฌ๋ n, ๋ค์ ์๋ ํ ๋๋ฆฌ๋ n - 1, ๊ทธ ๋ค์ ์ค๋ฅธ์ชฝ ์ ํ ๋๋ฆฌ๋ n - 2๋งํผ ํ ๋น๋๋ค.
โท ์ด๋, ์ซ์๊ฐ ํ ๋น๋ ๋๋ง๋ค 1 ์ฉ ์ฆ๊ฐํ์ฌ์ผ ๋ฌธ์ ์ ๊ท์น์ ๋ง์กฑํ๊ฒ ๋๋ค.
โท ๊ตฌํํ๊ธฐ ์ํด i์ j๋ ํ ๋น๋๋ ์์น, num์ ํ ๋น๋ ๋์ ์ซ์๋ก ์ ์ํ๊ณ , ํ๋์ฉ ์ค์ด๋ n์ด 0์ด ๋๋ ๊ฒฝ์ฐ ๋ฉ์ถ๋๋ก ํ๋ค.
โถ for [Indicator] in [Array] ๋ฌธ์ N์ฐจ์ ๋ฐฐ์ด์ ๋ฃ๊ฒ ๋๋ฉด, ๋ฐฐ์ด์ ์์์ธ N-1์ฐจ์ ๋ฐฐ์ด์ ์์๋๋ก Indicator์ ํ ๋นํ๋ค.
'Programming > Coding Test' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Level 2] H-Index (Python) (0) | 2020.10.05 |
---|---|
[Level 2] ์์ฅ (Python) (0) | 2020.09.30 |
[Level 2] ๊ดํธ ๋ณํ (Python) (0) | 2020.09.30 |
[Level 2] ์นดํซ (Python) (0) | 2020.09.24 |
[Level 2] ๋ค์ ํฐ ์ซ์ (Python) (0) | 2020.09.24 |