var findWords = function(words) {
let row1 = ['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p'];
let row2 = ['a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l'];
let row3 = ['z', 'x', 'c', 'v', 'b', 'n', 'm'];
let answer = [];
words.forEach(x => {
let spliter = x.toLowerCase().split('');
if(spliter.every(j => row1.includes(j))) answer.push(x)
if(spliter.every(j => row2.includes(j))) answer.push(x)
if(spliter.every(j => row3.includes(j))) answer.push(x)
})
return answer;
};
every()와 includes()를 이용해 구현할 수 있습니다.
if 일때 어떻게 동작할지만 고쳐주면 됩니다.
words 인자는 배열로 받는다는 가정입니다.
function solution(spell, dic) {
let answer = []
dic.forEach(ele => {
let spliter = [...new Set(ele)]
if(spell.every(j => spliter.includes(j))) answer.push(ele)
})
return !answer.length ? 2 : 1
}
중복요소를 제외하고 비교하기 위한 코드입니다.
set을 이용해 중복을 제거하고 비교합니다.
spell, dic 모두 문자열로 이루어진 배열 인자를 받습니다.
반응형
'cheetsheet' 카테고리의 다른 글
[Cheat Sheet] 최대공약수, 최소공배수 찾기 (0) | 2022.12.13 |
---|---|
[Cheat Sheet]에라토스테네스의 체 (0) | 2022.12.13 |
[Cheat Sheet] 소인수 분해 코드 (0) | 2022.12.12 |
[Cheat Sheet] 객체로 중복이 몇번 등장했는지 체크하기 (0) | 2022.12.12 |
[Cheat Sheet] 대문자, 소문자, 숫자 아스키코드 값 (0) | 2022.11.30 |