(코딩 테스트 연습) 작은 부분 문자열

1. 조건

문자열 t와 p가 있습니다.

1 ≤ 길이 p ≤ 18

길이 p ≤ 길이 t ≤ 10,000

티와 p는 숫자로만 구성되고 0으로 시작하지 않는 문자열입니다.

2. 솔루션 프로세스

p의 길이가 인 한 t의 하위 문자열을 반복합니다.

순회할 때 t의 하위 문자열이 p보다 작거나 같은 경우

답을 1로 추가합니다.

3. 해결

function solution(t, p) {
  let answer = 0;
  const totalSize = t.length;
  const sliceSize = p.length;

  for (let i = 0; i <= totalSize - sliceSize; i += 1) {
    if (t.slice(i, i + sliceSize) <= p) {
      answer += 1;
      continue;
    }
  }

  return answer;
}

4. 추가

여기에 뭔가 빠졌다

즉, 비교 연산자는 문자열에서 사용됩니다.

만약 이 문제가 수준이 높고 이 부분에 함정이 있었다면…

흠…