Written by
최태열
on
on
[Python][프로그래머스][Level2] 스킬트리
[Python][프로그래머스][Level2] 스킬트리
코드
def solution(skill, skill_trees):
answer = 0
s={i:cnt for cnt,i in enumerate(skill)}
for skill_tree in skill_trees:
check=[]
for tree in skill_tree:
if tree in skill:
check.append(s[tree])
if not check:
answer+=1
elif check==sorted(check) and sorted(check)[-1]+1==len(check):
answer+=1
return answer
정렬을 활용해 풀었다.
skill의 순서대로 숫자를 dictionary에 매치시킨다.
skill_trees를 순환하면서
해당 tree가 skill에 있다면 순서대로 check에 집어넣는다.
과정을 마치고 check에 들어있는 순서가 skill의 순서와 같은 skill_tree의 갯수를 반환한다.
Discussion and feedback