[프로그래머스] 가장 긴 팰린드롬 - JavaScript

이수동·2022년 3월 14일
0
post-thumbnail

프로그래머스 Level 3 - 가장 긴 팰린드롬


📌 문제 설명


📌 생각한 풀이 방법

  1. 내림차순으로 모든 문자열을 탐색한다.
  2. 탐색을 하다 해당 부분문자열이 팬린드롬을 만족하면 해당 값의 길이를 반환한다.

📌 풀이

function validString(str) {
  for (let i = 0; i < str.length; i++) {
    if (str[i] !== str[str.length - 1 - i]) {
      return false;
    }
  }
  return true;
}

function solution(s) {
  let count = s.length;
  while (count > 0) {
    for (let i = 0; i <= s.length - count; i++) {
      // 내림차순으로 모든 문자열을 탐색
      let current = s.substring(i, count + i);
      if (validString(current)) {
        // 팬린드롬을 만족
        return current.length; // 해당 값의 길이를 반환
      }
    }
    count--;
  }
}
profile
기록을 통한 성장하기 🧐

0개의 댓글