๐กsolutions )
๐ฌ ๋ก์ง์ ํฌ๊ฒ ๋๋ง์๊ธฐ๊ฐ ์ ํจํ์ง for๋ฌธ์ ๋๋ฉฐ ํ์ธ -> ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ๋ ์ด 2๊ฐ์ง(์ด๋ฏธ ๋งํ ๋จ์ด๋ฅผ ๋ค์ ๋งํ ๊ฒฝ์ฐ์ ์๋จ์ด์ ๋ง์ง๋ง๊ณผ ๋ท๋จ์ด์ ์ฒซ ๋ฒ์งธ๊ฐ ๊ฐ์ง ์์ ๊ฒฝ์ฐ)
* ๋ฒํธ์ ์ฐจ๋ก๋ฅผ ๊ตฌํ ๋๋ ์๋ซ์ฒ๋ผ ๊ตฌํ๊ณ ์ ํ๋ ์ ํํ ๊ฐ์ด ๋์ค๋๋ก ๋ง์ ์ฒ๋ฆฌ
๐ฌ ๋ฒํธ๋ฅผ ๋ํ๋ด๋ idx๋ i๋ฅผ n์ผ๋ก ๋๋ ๋๋จธ์ง์ +1๋ฅผ ํด์ฃผ๊ธฐ
๐ฌ ์ฐจ๋ก๋ฅผ ๋ํ๋ด๋ cnt๋ n์ ๋ฐฐ์ ๋ฒ์งธ์ธ์ง ์๋ ์ง์ ๋ฐ๋ผ ๋ถ๊ธฐ ์ฒ๋ฆฌํด์ผ ํจ
๐ซcode )
def solution(n, words):
tmp = [words[0]] # ์ฒซ ๋ฒ์งธ ๋จ์ด๋ ๋จผ์ ๋ฃ๊ณ ์์
for i in range(1, len(words)): # ๋ ๋ฒ์งธ ๋จ์ด๋ถํฐ ์์ํด์ ๋๋ง์๊ธฐ ์ ํจํ์ง ํ์ธ
if words[i - 1][-1] != words[i][0]: # ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ 1๋ฒ
idx = i % n + 1
cnt = i + 1
break
else:
if words[i] not in tmp: # ๊ฐ๋ฅํ ๊ฒฝ์ฐ
tmp.append(words[i])
else: # ๋ถ๊ฐ๋ฅํ ๊ฒฝ์ฐ 2๋ฒ
idx = i % n + 1
if idx == 0:
idx = n
cnt = i + 1
break
else: # ์ฃผ์ด์ง ๋จ์ด ๋ชจ๋ ํ๋ฝ์๊ฐ ์๊ธฐ์ง ์๋ ๊ฒฝ์ฐ
return [0, 0]
if cnt % n == 0:
cnt = cnt // n
else:
cnt = cnt // n + 1
answer = [idx, cnt]
return answer
๐ description )
๋ฌธ์ ์ถ์ฒ : programmers.co.kr/learn/courses/30/lessons/12981?language=python3
๋ฌธ์ ์ค๋ช 1๋ถํฐ n๊น์ง ๋ฒํธ๊ฐ ๋ถ์ด์๋ n๋ช ์ ์ฌ๋์ด ์์ด ๋๋ง์๊ธฐ๋ฅผ ํ๊ณ ์์ต๋๋ค. ์์ด ๋๋ง์๊ธฐ๋ ๋ค์๊ณผ ๊ฐ์ ๊ท์น์ผ๋ก ์งํ๋ฉ๋๋ค.
๋ค์์ 3๋ช ์ด ๋๋ง์๊ธฐ๋ฅผ ํ๋ ์ํฉ์ ๋ํ๋ ๋๋ค. tank → kick → know → wheel → land → dream → mother → robot → tank ์ ๋๋ง์๊ธฐ๋ ๋ค์๊ณผ ๊ฐ์ด ์งํ๋ฉ๋๋ค.
๋๋ง์๊ธฐ๋ฅผ ๊ณ์ ์งํํด ๋๊ฐ๋ค ๋ณด๋ฉด, 3๋ฒ ์ฌ๋์ด ์์ ์ ์ธ ๋ฒ์งธ ์ฐจ๋ก์ ๋งํ tank ๋ผ๋ ๋จ์ด๋ ์ด์ ์ ๋ฑ์ฅํ๋ ๋จ์ด์ด๋ฏ๋ก ํ๋ฝํ๊ฒ ๋ฉ๋๋ค. ์ฌ๋์ ์ n๊ณผ ์ฌ๋๋ค์ด ์์๋๋ก ๋งํ ๋จ์ด words ๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๊ฐ์ฅ ๋จผ์ ํ๋ฝํ๋ ์ฌ๋์ ๋ฒํธ์ ๊ทธ ์ฌ๋์ด ์์ ์ ๋ช ๋ฒ์งธ ์ฐจ๋ก์ ํ๋ฝํ๋์ง๋ฅผ ๊ตฌํด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ ์ฌํญ
์
์ถ๋ ฅ ์
์
์ถ๋ ฅ ์ #1
์ ๊ฐ์ ์์๋ก ๋ง์ ํ๊ฒ ๋๋ฉฐ, 3๋ฒ ์ฌ๋์ด ์์ ์ ์ธ ๋ฒ์งธ ์ฐจ๋ก์ ๋งํ tank๋ผ๋ ๋จ์ด๊ฐ 1๋ฒ ์ฌ๋์ด ์์ ์ ์ฒซ ๋ฒ์งธ ์ฐจ๋ก์ ๋งํ tank์ ๊ฐ์ผ๋ฏ๋ก 3๋ฒ ์ฌ๋์ด ์์ ์ ์ธ ๋ฒ์งธ ์ฐจ๋ก๋ก ๋ง์ ํ ๋ ์ฒ์ ํ๋ฝ์๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค. ์
์ถ๋ ฅ ์ #2
์ ๊ฐ์ ์์๋ก ๋ง์ ํ๊ฒ ๋๋ฉฐ, ์ด ๊ฒฝ์ฐ๋ ์ฃผ์ด์ง ๋จ์ด๋ก๋ง์ผ๋ก๋ ํ๋ฝ์๊ฐ ๋ฐ์ํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ [0, 0]์ returnํ๋ฉด ๋ฉ๋๋ค. ์
์ถ๋ ฅ ์ #3
์ ๊ฐ์ ์์๋ก ๋ง์ ํ๊ฒ ๋๋ฉฐ, 1๋ฒ ์ฌ๋์ด ์์ ์ ์ธ ๋ฒ์งธ ์ฐจ๋ก์ 'r'๋ก ์์ํ๋ ๋จ์ด ๋์ , n์ผ๋ก ์์ํ๋ now๋ฅผ ๋งํ๊ธฐ ๋๋ฌธ์ ์ด๋ ์ฒ์ ํ๋ฝ์๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค. |