Published 2020. 1. 19. 18:53
반응형
문제 7. Reverse integer
Given a 32-bit signed integer, reverse digits of an integer.
Example 1:
Input: 123 Output: 321
Example 2:
Input: -123 Output: -321
Example 3:
Input: 120 Output: 21
Note:Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−2^31, 2^31 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.
easy level 답게 간단합니다. 주어진 int data를 뒤집기만 하면 됩니다. 단, int value의 범위를 벗어나는 경우 0를 주면 됩니다.
class Solution:
def reverse(self, x: int) -> int:
#x에 절대값을 문자열로 받음
string = str(abs(x))
#문자열로 받은 x를 뒤집는데, x가 0보다 작은 경우 음수로 바꿔준다
reverse = int(string[::-1]) if x >= 0 else 0 - int(string[::-1])
#문자열의 bit_length가 32 이하(bit = log2x)인 경우 출력, 반대 경우 0 출력
return reverse if reverse.bit_length() < 32 else 0
반응형