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

Junyoung Park·2022년 1월 8일
0

코딩테스트

목록 보기
43/631

1. 문제 설명

가장 긴 팰린드롬

2. 문제 분석

팰린드롬 체크는 간단하게 본 문자열과 그 문자열을 뒤집은 문자열이 같은 지 확인하는 방법으로 수행했다. 윈도우 크기 K를 처음부터 옮기면서 팰린드롬 가능성을 체크한다. 윈도우 크기 K는 팰린드롬 전체 길이 len(s)부터 1씩 감소한다. 이렇게 K를 1, 2, 3...부터 옮겨가면서 팰린드롬을 체크한다. 만일 모든 팰린드롬 가능성이 사라진다면 (최소) 길이인 1을 리턴한다.

3. 나의 풀이

def solution(s):
    for i in range(len(s), 1, -1):
        for j in range(len(s)-i+1):
            pal = s[j:j+i]
            if pal == pal[::-1]: return len(pal)
    return 1
profile
JUST DO IT

0개의 댓글