undefined
[프로그래머스] 스킬트리 -JS 본문
반응형
문제 설명
skill을 포함하는 것만 남기고 Index로 비교
문제 풀이
const isSorted = arr => {
for(let i =0; i < arr.length; i++) if(arr[i] !== i) return false
return true
}
function solution(skill, skill_trees) {
let answer = 0
skill_trees.map(skillTree => {
let skillIndex = Array.from(skillTree).filter(s=>skill.includes(s)).map(s=>skill.indexOf(s))
if(isSorted(skillIndex)) answer+=1
})
return answer
}
1. arr의 요소의 값이 해당 인덱스와 같을 때 true를 리턴하는 정렬확인 함수를 정의
2. skill_trees배열을 반복 해주어 각 내부요소를 array화 해줌
3. array화 해준 배열 요소들 중 skill배열 요소를 포함한 것들만 필터링
4. arr에는 skill배열요소만 남게 될 것이고 skill배열에서의 index를 구함
5. 정렬확인함수가 true일때 answer +1 // 스킬을 끝까지 배우지 않았더라도 정렬확인함수는 그 배열의 인덱스만큼 반복하기때문에 상관X
배운 점
반응형
'Coding Test' 카테고리의 다른 글
[프로그래머스] 프린터 -JS (0) | 2022.07.08 |
---|---|
[프로그래머스] 타겟 넘버 -JS (0) | 2022.07.07 |
[프로그래머스] 기능개발 - JS (0) | 2022.07.03 |
[프로그래머스] 신고 결과 받기 -JS (0) | 2022.07.02 |
[프로그래머스] 로또의 최고 순위와 최저 순위 -JS (0) | 2022.07.01 |
Comments