728x90
반응형
1. 내 코드
function solution(t, p) {
let arr = t.split('').map(Number); //한개씩 나누기 [3,4,1,5,9,2]
let newNum = '';
let newArr = [];
//t의길이-p의길이까지 반복 (넘어가면 undefined나오니깐)
for (let i = 0; i <= t.length - p.length; i++) {
newNum = '';
for (let j = 0; j < p.length; j++) {
newNum += arr[i + j]; // 0+0 /0+1 / 0+2
}
newArr.push(newNum);
}
return newArr.map(Number).filter((x) => x <= p).length;
}
input : t= "3141592" / p:"271" || output :2
1) t를 배열로 만든 후 숫자인 배열로 변환
2) t의길이 - p의길이만큼 반복해서 새로운 배열에 넣기
3) 새로운 배열에 필터 (p보다 작거나 같은 수) => 그 길이 리턴 => 개수 출력 가능
2. 다른 사람 풀이
function solution(t, p) {
let count = 0;
for(let i=0; i<=t.length-p.length; i++) {
let value = t.slice(i, i+p.length);
if(+p >= +value) count++;
}
return count;
}
▶배열의 slice를 사용
끝.
반응형
'코딩테스트' 카테고리의 다른 글
[프로그래머스 | JavaScript] 시저 암호 (1) | 2023.12.07 |
---|---|
[프로그래머스 | JavaScript] 최소직사각형 (0) | 2023.12.01 |
[프로그래머스 | JavaScript] 삼총사 (0) | 2023.11.30 |
[프로그래머스 | JavaScript] 이상한 문자 만들기 (1) | 2023.11.30 |
[프로그래머스 | JavaScript] 3진법 뒤집기 (0) | 2023.11.23 |