9. Palindrome Number

JAY KIM·2021년 4월 7일
0

LeetCode

목록 보기
3/3

문제링크
https://leetcode.com/problems/palindrome-number/

문제 접근

먼저, Palindrome은 앞으로 해도 이효리, 거꾸로 해도 이효리 인 글자, 숫자 기타 등등을 의미한다.
이 문제는 Reverse Integer 문제와 똑같은 로직을 사용했다.
10을 이용해서 나눗셈의 몫과 나머지를 이용해서 연산했다.
단, 이번 문제에서 음수는 false를 반환한다.

Pseudocode

  1. 변수 생성
    • 입력받은 정수를 저장할 변수 생성
    • 결과를 저장할 변수 생성
  2. 로직
    • 입력받은 정수가 0이 될 때까지 반복
    • 결과를 저장할 변수 = (자기 자신 X 10) + (입력받은 정수 % 10)
    • 입력받은 정수 = 자기 자신 / 10
    • 입력받은 정수와 결과를 저장한 변수가 일치하는지 체크
    • 결과 리턴
bool isPalindrome(int x) {
    long _first = x;
    long _check = 0;

    if (x < 0)
      return false;

    while (x != 0) {
      _check = _check * 10 + x % 10;
      x = x / 10;
    }

    return _first == _check;
  }

결과

최종결론

확실히 똑같은 로직으로 한번 문제를 풀어보니, 비슷한 로직을 만났을 때 접근방법이 빠르게 보였었다. 그리고 저번과 다르게 이번에는 문제를 꼼꼼히 읽었다.
앞으로도 계속 이래야 할 텐데....
이번 문제에선 Palindrome 단어의 뜻을 알게 된 게 가장 유익한 것 같다,, ㅎ

profile
JAY's Digging Log

0개의 댓글