diff --git a/0007/README.md b/0007/README.md new file mode 100644 index 0000000..07f86f4 --- /dev/null +++ b/0007/README.md @@ -0,0 +1,35 @@ +# Reverse Integer + +Given a signed 32-bit integer ```x```, return ```x``` with its digits reversed. If reversing ```x``` causes the value to go outside the signed 32-bit integer range ```[-231, 231 - 1]```, then return ```0```. + +**Assume the environment does not allow you to store 64-bit integers (signed or unsigned).** + + +## Examples + +* Example 1 +``` +Input: x = 123 +Output: 321 +``` + +* Example 2 +``` +Input: x = -123 +Output: -321 +``` + +* Example 3 +``` +Input: x = 120 +Output: 21 +``` + +* Example 4 +``` +Input: x = 0 +Output: 0 +``` + +## Constraints +* -231 <= x <= 231 - 1 \ No newline at end of file diff --git a/0007/reverse_integer.py b/0007/reverse_integer.py new file mode 100644 index 0000000..0bfa764 --- /dev/null +++ b/0007/reverse_integer.py @@ -0,0 +1,5 @@ +class Solution: + def reverse(self, x): + s = str(x) + res = (int('-' + s[1:][::-1]) if s[0] == '-' else int(s[::-1])) + return (res if -2147483648 <= res <= 2147483647 else 0)