Programming/Algorithm

[백준/python]1259번 팰린드롬수

dev seon 2024. 5. 5. 10:48

1. 문제

 

이 문제는 팰린드롬 수를 찾는 문제이다.

팰린드롬 수란 뒤에서부터 읽어도 같은 수이다.

2. 접근

숫자를 문자 형태로 받아온 뒤, 0인 경우에는 종료한다.

나중에 출력할 결과를 same이라는 변수로 만들어 'yes'로 초기화해둔다.

숫자길이의 절반, 즉 길이를 2로 나눈 수까지 반복문을 돌려서

num[i]와 num[-i-1]이 같은지 확인한다.

만약 다른 경우에는 same 변수를 'no'로 바꾸고 반복문을 탈출한다.

 

처음에는 이상하게 에러가 생겨서 각 변수를 출력해보다가,

str에 개행문자 '₩n'이 맨 뒤에 포함되어 생기는 오류임을 발견했다!

rstrip()을 추가하여 오류를 해결하였다!!

 

3. 코드

import sys
input = sys.stdin.readline
while True:
    num = str(input().rstrip())
    if num == '0':
        break
    same = 'yes'
    for i in range(len(num)//2 + 1):
        if num[i] != num[-i-1]:
            same = 'no'
            break
    print(same)

 

4. 결과

 

문자열 입력 받을 때 rstrip()을 사용해 개행문자 지워주기!! 기억하자!