DHistory

[Baekjoon] BF - 1254 팰린드롬 만들기 본문

Computer Science/Algorithm

[Baekjoon] BF - 1254 팰린드롬 만들기

ddu0422 2024. 8. 29. 19:24

문제

https://www.acmicpc.net/problem/1254

 

풀이

1. 이미 팰린드롬인 경우 해당 문자열의 길이가 최소

2. 앞에서 부터 하나씩 거꾸로 붙여나가며 팰린드롬 문자열 확인

 

예시

abcd

 

코드

import sys

text = sys.stdin.readline().rstrip()


def palindrome(text):
    if text == text[::-1]:
        return len(text)
    
    for i in range(len(text)):
        temp_text = text + text[:i + 1][::-1]
        if temp_text == temp_text[::-1]:
            return len(text) + i + 1
    # 무의미
    return len(text) * 2 + 1


print(palindrome(text))