function solution(spell, dic) {
let arr = [];
for(let i=0; i < dic.length; i++) {
let subArr = [];
for(let j=0; j < spell.length; j++) {
subArr.push(dic[i].includes(spell[j]));
}
arr.push(subArr);
}
return arr.some(subArr => subArr.every(Boolean)) ? 1 : 2;
}
많은 예시를 보고 만들어 낸 알고리즘이다.
for문을 두번 사용했다.
dic의 배열을 돌고 spell을 배열을 돌면서 spell의 인수들이 포함되어 있는지를 indcludes() 메서드를 이용하여 subArr에 넣어주었다.
새로 알게된 some() 메서드는 조건이 맞으면 true 아니면 false를 반환한다.