[프로그래머스] 스킬트리
코딩테스트 2022. 9. 18. 20:16

// https://school.programmers.co.kr/learn/courses/30/lessons/49993 function solution(skill, skill_trees) { // 배열로 비교하기 위한 배열화 작업 const split_skill = skill.split(''); const split_skill_trees = skill_trees.map(skillTree => skillTree.split('')); // skill에 존재 하지 않는 스킬은 순서와 상관없기 때문에 필터로 제거하여 스킬트리에 존재하는것만 남기기 const filterItem = split_skill_trees.map(skillTree => skillTree.filter(skill=> split_skill.in..

[프로그래머스] 타겟넘버
코딩테스트 2022. 9. 2. 18:17

function solution(numbers, target) { // https://school.programmers.co.kr/learn/courses/30/lessons/43165 let 방법의수 = 0; // 0,0으로 시작하여 모든 경우의 수 탐색 재귀함수(0, 0); function 재귀함수 (인덱스, 합) { // 모든 index를 탐색 if( 인덱스 === numbers.length){ // index와 numbers 길이와 같아지면 종료한다 if(합 === target ){ // 합과 타겟과 동일하다면 방법의수 ++ 방법의수++ } // 탈출 return } // 해당 노드에서 +,-를 모두 실행한다. 재귀함수(인덱스+1, 합 + numbers[인덱스]); 재귀함수(인덱스+1, 합 - n..

[프로그래머스] H-Index
코딩테스트 2022. 8. 26. 14:24

function solution(citations) { //https://school.programmers.co.kr/learn/courses/30/lessons/42747#qna // 1. 논문을 많이 인용된 순으로 정렬 // 2. index와 citations 두 숫자를 비교하며 내려갑니다. // 3. 두 숫자가 같아지거나 citations가 index보다 더 작아지기 시작하는 직전의 숫자를 찾아냅니다 return citations.slice(0) .sort((a,b)=> b - a) .reduce((acc,cur,index,array)=> index < array[index] ? acc += 1 : acc,0) } 프로그래머스 문제를 이해하기 너무 어려워서 위키피아 설명을 참조했습니다. for문으로..