Sum of Two Integers - LeetCode
두 정수를 +나 -연산자 없이 더해보자.
class Solution:
def getSum(self, a: int, b: int) -> int:
cnt=[None]*2000
if a>=0:
for _ in range(a):
cnt.append(None)
else:
for _ in range(0,a,-1):
cnt.pop()
if b>=0:
for _ in range(b):
cnt.append(None)
else:
for i in range(0,b,-1):
cnt.pop()
return len(cnt)-2000
입력으로 들어오는 정수 범위가 -1000~1000이었기 때문에 2000을 바이어스로 두고 배열을 만들어서 풀었다. 이렇게 풀고 다른 사람들은 어떻게 풀었는지 궁금해서 찾아봤는데 비트 연산이 정해인 것 같다. 근데 그냥 + 쓴 사람도 있었다…ㅋㅋㅋㅋ
O(a+b)여서 O(2*10^3)이다.