문제
나의코드
const solution = (t, p) => {
// 뽑아내는 수의 마지막인덱스 : p.length -1 ~ 끝까지
// 각각의 수의 첫번째 인덱스 : 마지막인덱스 - (p.length - 1)
let result = 0;
for(let selectNumberLastIndex = p.length -1; selectNumberLastIndex < t.length; selectNumberLastIndex++) {
let selectNumberFirstIndex = selectNumberLastIndex - (p.length -1);
if(Number(t.slice(selectNumberFirstIndex, selectNumberLastIndex+1)) <= Number(p)) result+=1;
}
return result;
}
로직흐름
- 뽑아내는 수의 마지막인덱스는 p.length -1 부터 t.length-1까지이다.
- 뽑아내는 수의 첫번째 인덱스는 : 해당 수의 마지막인덱스 - (p.length -1)이다.
- 마지막인덱스를 기준으로 반복문을 돌려서
- 수를 뽑아낸다. 이 수와 p를 비교해서 이 수가 p보다 작거나 같으면 최종적으로 반환해줄 변수의 값을 +1하면서 개수를 센다.