[Leetcode] 7. Reverse Integer

Seongjun Lee·2022년 2월 19일
0

[Leetcode] - Problem

목록 보기
7/43
post-thumbnail

Problem

문제 링크

32-bit의 integer x를 뒤집어서 리턴하라. 이때 [-2^31, 2^31 -1] 범위를 벗어나면 0을 리턴한다.

Solution

  1. 음수인지 아닌지를 파악, 음수라면 '-'을 따로 보관
  2. 문자를 뒤에서부터 새로운 배열의 값으로 추가함, '-'의 값만 추가하지않는 조건처리
  3. integer의 범위를 확인하고 벗어나면 0으로 처리

JS Code

/**
 * @param {number} x
 * @return {number}
 */
var reverse = function(x) {
  const str = `${x}`
  const isNegative = isNaN(str[0])
  let answer = isNegative ? '-' : ''
  
  for(let i = str.length-1; 0 <= i ; i--) {
      if (isNegative && i === 0) continue
      answer = answer.concat(str[i])
  }

  if (-Math.pow(2,31) <= +answer && answer <= Math.pow(2,31)-1) return +answer
  return 0
}
profile
Hi there 👋

0개의 댓글