[LeetCode&Python] Problem 371. Sum of Two Integers

Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -.

Example 1:

Input: a = 1, b = 2
Output: 3

Example 2:

Input: a = -2, b = 3
Output: 1
 
class Solution(object):
def getSum(self, a, b):
"""
:type a: int
:type b: int
:rtype: int
"""
MAX = 0x7FFFFFFF
#符号位为0的最大值
Mask = 0xFFFFFFFF
#符号位为1的最大值 while b!=0:
suma=(a^b)&Mask
carry=((a&b)<<1)&Mask
a=suma
b=carry return a if a<=MAX else ~(a^Mask) #Python 比较麻烦的地方是 要Mask.....

  

上一篇:机器学习代码实战——决策树(预测泰坦尼号船员生存情况)


下一篇:使用 gradle 整合 vuejs 项目与 java 项目