371.SumOfTwoIntegers

看了百度很多都是说用异或进行不进位的加法,然后用移位表示进位。

我一开始先试了下异或的方式,发现没有无法表示进位。然后想到了以前组原里写过的lab1实验,就是用位操作来表示各种运算。

于是就试了试与和或的运算结果。

发现与结果加上或的结果正好可以表示整个加法,于是提交测试了一下发现通过了。

代码:

```

return a&b+a|b

```

python中可能需要添加括号才能测试通过,不过运行时间相比来说较慢。

其中的原理我还没有搞明白,先把答案发上来,记录一下。

你可能感兴趣的:(371.SumOfTwoIntegers)