프로그래머스 LEVEL 2(스킬트리)

image

  • 사용 언어 : javascript

  • 해결 날짜 : 2022-09-21

  • 해결 방법 :
    • skill_trees를 돌며 필수 스킬만 따로 저장
    • 필수 스킬이 선행 스킬 순서에 맞게 되어있거나 없을 때 answer 추가
  • 회고 :
    • 필수 스킬이 비어있을 때 조건 생각
  • 코드

    function solution(skill, skill_trees) {
        let answer = 0;
        for (const skill_tree of skill_trees) {
            let essential_skill = '';
            for (let i = 0; i < skill_tree.length; i++) {
                if (!skill.includes(skill_tree[i])) continue;
                essential_skill += skill_tree[i]
            }
            if (skill.charAt(0) === essential_skill.charAt(0) && skill.includes(essential_skill) || essential_skill.length === 0) answer++;
        }
        return answer;
    }
    
  • 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges