diff --git a/1070_convert-to-base-2/README.md b/1070_convert-to-base-2/README.md new file mode 100644 index 0000000..700e095 --- /dev/null +++ b/1070_convert-to-base-2/README.md @@ -0,0 +1,28 @@ +Given an integer `n`, return _a binary string representing its representation in base_ `-2`. + +**Note** that the returned string should not have leading zeros unless the string is `"0"`. + +**Example 1:** + + Input: n = 2 + Output: "110" + Explantion: (-2)2 + (-2)1 = 2 + + +**Example 2:** + + Input: n = 3 + Output: "111" + Explantion: (-2)2 + (-2)1 + (-2)0 = 3 + + +**Example 3:** + + Input: n = 4 + Output: "100" + Explantion: (-2)2 = 4 + + +**Constraints:** + +* `0 <= n <= 109` \ No newline at end of file diff --git a/1070_convert-to-base-2/python3/solution.py b/1070_convert-to-base-2/python3/solution.py new file mode 100644 index 0000000..caff792 --- /dev/null +++ b/1070_convert-to-base-2/python3/solution.py @@ -0,0 +1,15 @@ +class Solution: + def baseNeg2(self, n: int) -> str: + result = '' + + while n != 0: + rem = n % -2 + n = n // -2 + + if rem < 0: + n += 1 + rem += 2 + + result = str(rem) + result + + return result if result != '' else '0'