[leetcode100] 647. Palindromic Substrings (JS)

devmomo·2021년 4월 13일
0

알고리즘

목록 보기
52/52
post-thumbnail

647. Palindromic Substrings

문제
파라미터로 문자열 데이터 s가 주어질 때, palindromic 조건을 만족하는 경우의 수를 return하는 함수 만들기

palindromic
1. 문자열 각 원소는 palindromic하다
2. 문자열 각 원소를 조합하는 경우, 같은 문자로만 구성되어야 한다.

포인터

var countSubstrings = function(s) {
    let count = 0;
// 포인터 1 => i
    for (let i=0; i<s.length; i++){
// 포인터 2 => j
        for(let j=i; j<i+2; j++) {
// 포인터 3 => start        
            let start = i;
// 포인터 4 => end
            let end = j;
            while(start>=0 && end<s.length &&s[start]===s[end]) {
                count++;
                start--;
                end++;
            }
        }
    }
    return count;
};

이 문제의 경우 포인터로 설계하기까지 상당히 어려웠다.
일단 문자열 인덱스를 처음부터 도는 i와 i의 다음 원소와 비교하는 j
그리고 해당 조건이 palindromic 하다면 범위를 확장해 다시 비교하는 start와 end까지 포인터로 잡고 문제를 풀었다.

profile
FE engineer

0개의 댓글