just inside

[백준] Bronze 1. 1259 - 팰린드롬수 python 본문

coding test/구현

[백준] Bronze 1. 1259 - 팰린드롬수 python

방울도마도 2024. 7. 15. 14:30
728x90

문제 링크

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


문제 설명

어떤 단어를 뒤에서부터 읽어도 똑같다면 그 단어를 팰린드롬이라고 한다. 'radar', 'sees'는 팰린드롬이다.

수도 팰린드롬으로 취급할 수 있다. 수의 숫자들을 뒤에서부터 읽어도 같다면 그 수는 팰린드롬수다. 121, 12421 등은 팰린드롬수다. 123, 1231은 뒤에서부터 읽으면 다르므로 팰린드롬수가 아니다. 또한 10도 팰린드롬수가 아닌데, 앞에 무의미한 0이 올 수 있다면 010이 되어 팰린드롬수로 취급할 수도 있지만, 특별히 이번 문제에서는 무의미한 0이 앞에 올 수 없다고 하자.

 

입력

입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다. 입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함되지 않는다.

 

출력

각 줄마다 주어진 수가 팰린드롬수면 'yes', 아니면 'no'를 출력한다.


제출 코드

import sys

input = sys.stdin.readline

while True:
    num = input().rstrip()
    if int(num) == 0:
        break
    if list(reversed(num)) == list(num):
        print('yes')
    else:
        print('no')

 

풀이

  • 0이 입력될 때 까지 while 문으로 반복한다.
  • 입력받은 num을 거꾸로 했을 때 num과 동일하면 yes, 다르면 no를 출력한다.
    • reversed 사용시 반환하는 자료형과 num의 자료형이 다르므로 일치되도록 변환시켜주어야 함

 

알아둘 사항

https://itholic.github.io/python-reverse-reversed/

 

[python] reverse, reversed 차이

파이썬 reverse, reversed의 차이

itholic.github.io

뒤집힌 값을 반환해주는 두 함수

  1. reverse
    • list 자료형에서 제공.
    • 값을 반환하지 않고 기존 list를 뒤집어줌.
  2. reversed
    • 내장함수.
    • reversed 객체 반환.
      • tuple, str => reversed 객체 반환
      • list => listreverseiterator 반환
      • list로 바꾸기 : list(reversed(list_name))
      • str으로 바꾸기 : ''.join(reversed(list_name))
728x90