CodingTest/Baekjoon

[baekjoon] 백준 1254번(파이썬): 팰린드롬 만들기

JunJangE 2022. 1. 4. 00:08

문제

 

1254번: 팰린드롬 만들기

동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는

www.acmicpc.net

알고리즘

- 반복문을 통해 문자열의 문자를 확인한다.

- i번째로 시작한 문자열과 i번째로 시작한 문자열을 뒤에서부터 확인한 문자열을 비교한다.

- 두 문자열이 같을 경우 i번째 이전에 문자들을 문자열 뒤에 추가하면 팰린드롬을 만들 수 있다.

- 현재 문자열의 개수와 i번째 이전에 문자의 개수를 더해서 출력한다.

코드

import sys

word = str(sys.stdin.readline().rstrip("\n"))

# 반복문을 통해 문자를 확인
for i in range(len(word)):

    # i번째로 시작한 문자열과 i번째로 시작한 문자를 뒤에서부터 확인한 문자열을 확인
    # 같을 경우 i번째 이전에 문자가 다른 것으로 문자열 뒤에 추가해주면 된다.
    if word[i:] == word[i:][::-1]:
        print(len(word) + i)
        break

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com