[Leetcode] 7. Reverse Integer โ
Problem โ
32-bit์ integer x๋ฅผ ๋ค์ง์ด์ ๋ฆฌํดํ๋ผ. ์ด๋ [-2^31, 2^31 -1]
๋ฒ์๋ฅผ ๋ฒ์ด๋๋ฉด 0์ ๋ฆฌํดํ๋ค.
Solution โ
- ์์์ธ์ง ์๋์ง๋ฅผ ํ์ , ์์๋ผ๋ฉด '-'์ ๋ฐ๋ก ๋ณด๊ด
- ๋ฌธ์๋ฅผ ๋ค์์๋ถํฐ ์๋ก์ด ๋ฐฐ์ด์ ๊ฐ์ผ๋ก ์ถ๊ฐํจ, '-'์ ๊ฐ๋ง ์ถ๊ฐํ์ง์๋ ์กฐ๊ฑด์ฒ๋ฆฌ
- integer์ ๋ฒ์๋ฅผ ํ์ธํ๊ณ ๋ฒ์ด๋๋ฉด 0์ผ๋ก ์ฒ๋ฆฌ
JS Code โ
js
/**
* @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
}