์ฝ๋ฉ ํ ์คํธ ์ฐ์ต - Summer/Winter Coding(~2018)
<์คํฌ ํธ๋ฆฌ>
๋ฌธ์ ์ค๋ช
์ ํ ์คํฌ์ด๋ ์ด๋ค ์คํฌ์ ๋ฐฐ์ฐ๊ธฐ ์ ์ ๋จผ์ ๋ฐฐ์์ผ ํ๋ ์คํฌ์ ๋ปํฉ๋๋ค.
์๋ฅผ ๋ค์ด ์ ํ ์คํฌ ์์๊ฐ ์คํํฌ → ๋ผ์ดํธ๋ ๋ณผํธ → ์ฌ๋์ผ ๋, ์ฌ๋๋ฅผ ๋ฐฐ์ฐ๋ ค๋ฉด ๋จผ์ ๋ผ์ดํธ๋ ๋ณผํธ๋ฅผ ๋ฐฐ์์ผ ํ๊ณ , ๋ผ์ดํธ๋ ๋ณผํธ๋ฅผ ๋ฐฐ์ฐ๋ ค๋ฉด ๋จผ์ ์คํํฌ๋ฅผ ๋ฐฐ์์ผ ํฉ๋๋ค.
์ ์์์ ์๋ ๋ค๋ฅธ ์คํฌ(ํ๋ง ๋ฑ)์ ์์์ ์๊ด์์ด ๋ฐฐ์ธ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์คํํฌ → ํ๋ง → ๋ผ์ดํธ๋ ๋ณผํธ → ์ฌ๋์ ๊ฐ์ ์คํฌ ํธ๋ฆฌ๋ ๊ฐ๋ฅํ์ง๋ง, ์ฌ๋ → ์คํํฌ๋ ๋ผ์ดํธ๋ ๋ณผํธ → ์คํํฌ → ํ๋ง → ์ฌ๋์ ๊ฐ์ ์คํฌํธ๋ฆฌ๋ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
์ ํ ์คํฌ ์์ skill๊ณผ ์ ์ ๋ค์ด ๋ง๋ ์คํฌํธ๋ฆฌ1๋ฅผ ๋ด์ ๋ฐฐ์ด skill_trees๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๊ฐ๋ฅํ ์คํฌ ํธ๋ฆฌ ๊ฐ์๋ฅผ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์กฐ๊ฑด
- ์คํฌ์ ์ํ๋ฒณ ๋๋ฌธ์๋ก ํ๊ธฐํ๋ฉฐ, ๋ชจ๋ ๋ฌธ์์ด์ ์ํ๋ฒณ ๋๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
- ์คํฌ ์์์ ์คํฌํธ๋ฆฌ๋ ๋ฌธ์์ด๋ก ํ๊ธฐํฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, C → B → D ๋ผ๋ฉด CBD๋ก ํ๊ธฐํฉ๋๋ค.
-์ ํ ์คํฌ ์์ skill์ ๊ธธ์ด๋ 1 ์ด์ 26 ์ดํ์ด๋ฉฐ, ์คํฌ์ ์ค๋ณตํด ์ฃผ์ด์ง์ง ์์ต๋๋ค.
- skill_trees๋ ๊ธธ์ด 1 ์ด์ 20 ์ดํ์ธ ๋ฐฐ์ด์ ๋๋ค.
- skill_trees์ ์์๋ ์คํฌ์ ๋ํ๋ด๋ ๋ฌธ์์ด์ ๋๋ค.
- skill_trees์ ์์๋ ๊ธธ์ด๊ฐ 2 ์ด์ 26 ์ดํ์ธ ๋ฌธ์์ด์ด๋ฉฐ, ์คํฌ์ด ์ค๋ณตํด ์ฃผ์ด์ง์ง ์์ต๋๋ค.
๋ฌธ์ ํ์ด
- my solution
def solution(skill, skill_trees):
answer = 0
for i in skill_trees:
count=0
temp=[]
for j in range(len(i)): #๊ฐ ํ๋์ฉ ์ฝ์ด์
for k in range(len(skill)):
if(skill[k]==i[j]): #skill์ ์๋ ๊ธ์๊ฐ i์ ๋ค์ด์๋ค๋ฉด
temp.append(skill[k]) #list์ ์ถ๊ฐ
if(len(temp)==0): #list ๊ธธ์ด๊ฐ 0์ด๋ฉด -> skill์ ์๊ด์์
answer+=1
for j in range(len(temp)):
if(skill[j]==temp[j]): #list์ skill์ ๋น๊ต
count+=1
if(count==len(temp)): #list๊ธธ์ด์ ๊ฐ๋ค๋ฉด ์ ํ ์คํฌ ์์ skill์ ๋ง๋ค๋ ์๋ฏธ
answer+=1
return answer
1) skill_trees์ ์๋ ๊ฐ ์ํ
1-1) ๊ฐ์ ํ๋์ฉ ์ฝ์ด์ skill์ ์๋ ๊ธ์๊ฐ ์๋ค๋ฉด list์ ์ถ๊ฐ
1-2) list์ ๊ธธ์ด๊ฐ 0์ด๋ฉด skill๊ณผ ์๊ด์์ผ๋ฏ๋ก answer+1
1-3) list ์ํ -> list์ skill์ ๋น๊ตํด์ list์ ๊ธธ์ด์ count๊ฐ ๊ฐ๋ค๋ฉด ์ ํ ์คํฌ ์์ skill์ ๋ง๋ค๋ ์๋ฏธ
answer+1
์ถ์ฒ: ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉ ํ ์คํธ ์ฐ์ต, https://programmers.co.kr/learn/challenges
'๐Algorithm > ๐ฅprogrammers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[programmers] ๋ด์ - ์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง ์์ฆ1 (0) | 2021.01.11 |
---|---|
[programmers] 3์ง๋ฒ ๋ค์ง๊ธฐ - ์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง ์์ฆ1 (0) | 2021.01.11 |
[programmers] ๋ ๊ฐ ๋ฝ์์ ๋ํ๊ธฐ - ์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง ์์ฆ1 (0) | 2021.01.11 |
[programmers] [1์ฐจ] ๋คํธ ๊ฒ์ - 2018 KAKAO BLIND RECRUITMENT (0) | 2021.01.04 |
[programmers] ์คํจ์จ - 2019 KAKAO BLIND RECRUITMENT (0) | 2021.01.03 |