[개인 정리]/[알고리즘]

알고리즘 - 대칭수 (Palindromic number) (Python 코드)

로얄거북 2020. 12. 21. 20:25
반응형

 문제

주어진 정수가 앞 뒤로 똑같은 지를 판별해라.

 

 

 예시

Input  : 12321
Output : True

12321 은 거꾸로 해도 12321 로 서로 같다.

 

Input  : -121
Output : False

-121 은 거꾸로 하면 121- 로 서로 다르다.

 

Input  : 1234
Output : False

1234 은 거꾸로 하면 4321 로 서로 다르다.

 

 알고리즘

INPUT = 12321

def is_palindrome(data):
    if data < 0:
        return false

    if data % 10 == 0 and data != 0:
        return false

    reverted = 0
    while data > reverted:
        reverted = reverted * 10 + data % 10
        data //= 10

    return data == reverted or data == reverted // 10


result = is_palindrome(INPUT)
print(result)
출력결과 : True

 

반응형

'[개인 정리] > [알고리즘]' 카테고리의 다른 글

알고리즘 - Two Sum (Python 코드)  (0) 2020.12.21