https://school.programmers.co.kr/learn/courses/30/lessons/120869?language=javascript
function solution(spell, dic) {
let spellSort = spell.sort().join("");
let tmp = dic.map(word => word.split("").sort().join(""));
for (let i = 0; i < tmp.length; i++) {
if (spellSort === tmp[i]) {
return 1;
}
}
return 2;
}
우선 spell을 통해서 dic안에 있는 단어를 만들 수 있냐 없냐가 중요하고, 모든 단어를 사용해야 한다고 말했다.
따라서 spell을 우선 sort() 후 join("")을 통해서 정렬해줬다.
이후 dic안에 있는 모든 단어를 똑같이 split("").sort().join("")을 통해서 정렬해줬다.
dic에 있는 정렬된 단어를 tmp에 넣어준 후, spellSort와 임시로 저장한 tmp[i]와 비교해 같은 단어가 있다면 return 1, 없다면 return 2를 반환하게 코드를 작성했다.