프로그래머스 원하는 문자열 찾기

CodeBee_·2023년 9월 25일

프로그래머스

목록 보기
10/31


원하는 문자열 찾기

https://school.programmers.co.kr/learn/courses/30/lessons/181878

문제 설명
알파벳으로 이루어진 문자열 myString과 pat이 주어집니다. myString의 연속된 부분 문자열 중 pat이 존재하면 1을 그렇지 않으면 0을 return 하는 solution 함수를 완성해 주세요.

단, 알파벳 대문자와 소문자는 구분하지 않습니다.

제한사항
1 ≤ myString의 길이 ≤ 100,000
1 ≤ pat의 길이 ≤ 300
myString과 pat은 모두 알파벳으로 이루어진 문자열입니다.

입출력 예

myStringpat return
"AbCdEfG""aBc"1
"aaAA""aaaaa"0

입출력 예 #1

  • "AbCdEfG"의 0~2번 인덱스의 문자열은 "AbC"이며, 이는 pat인 "aBc"와 같습니다. 따라서 1을 return 합니다.

입출력 예 #2

  • myString의 길이가 pat보다 더 짧기 때문에 myString의 부분 문자열 중 pat와 같은 문자열이 있을 수 없습니다. 따라서 0을 return 합니다.

🤍 나의 풀이

function solution(myString, pat) {
    let str = myString.toLowerCase();
    let pattern = pat.toLowerCase();
     // return str.includes(pattern) ? 1 : 0;
  
  //각 반복마다 현재 위치 i부터 시작하여 pat와 동일한 길이의 하위 문자열을 추출
    for(let i= 0 ; i <= str.length - pattern.length; i++){
        let subStr = str.slice(i, i + pattern.length)
    if(subStr === pattern) {
        return 1;
        }
    }
    return 0;

}
profile
엉금엉금 공부 블로그

0개의 댓글