CodingTest/programmers

[프로그래머스/Programmers] 스킬트리 - Python

ukunV 2021. 10. 5. 18:30

Link

 

코딩테스트 연습 - 스킬트리

 

programmers.co.kr

 

Solution

def solution(skill, skill_trees):
    answer = 0

    skill = list(skill)

    for i in range(len(skill_trees)):
        temp = []

        for j in range(len(skill_trees[i])):
            if skill_trees[i][j] in skill:
                temp.append(skill_trees[i][j])

        for m, n in zip(skill, temp):
            if m != n:
                answer -= 1
                break

        answer += 1

    return answer

 

Other Solution

def solution(skill, skill_trees):
    answer = 0

    for skills in skill_trees:
        skill_list = list(skill)

        for s in skills:
            if s in skill:
                if s != skill_list.pop(0):
                    break
        else:
            answer += 1

    return answer
📌 Tip: for-else: for문이 정상적으로 실행되지 않았다면(break가 실행되었다면) else문 실행