본문 바로가기

Programming/알고리즘 공부

[LeetCode] Palindrome Number | 난이도: Easy

반응형

문제

Given an integer x, return true if x is palindrome integer.

An integer is a palindrome when it reads the same backward as forward. For example, 

121 is palindrome while 123 is not.

 

주어진 정수 x의 값이 palindrome(회문(回文))일 경우 true를 리턴한다.

 

*회문(回文) : madam이나 nurses run처럼 앞에서부터 읽으나 뒤에서부터 읽으나 동일한 단어나 구(출처: 네이버)


예시

Input: x = 121
Output: true

예시

Input: x = -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.

답안

class Solution {
    public boolean isPalindrome(int x) {    
        if(x < 0) return false;

        int orgNum = x;
        int revNum = 0;
        while(orgNum != 0){
            revNum = revNum*10 + orgNum%10;
            orgNum /= 10;
        }
        return x == revNum;
    }
}

숫자를 뒤집는 Reverse Integer 문제에서 사용된 코드와 동일하다.

반응형