文章目录
题目代码PythonC++
题目
写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。
示例: 输入: a = 1, b = 1 输出: 2
提示: a, b 均可能是负数或 0 结果不会溢出 32 位整数
代码
Python
class Solution:
def add(self
, a
: int, b
: int) -> int:
c
=0xffffffff
a
,b
=a
&c
,b
&c
while b
!=0:
a
,b
=(a
^b
),(a
&b
)<<1&c
return a
if a
<=0x7fffffff else ~(a
^c
)
C++
class Solution {
public:
int add(int a
, int b
) {
while (b
!=0) {
int c
=(unsigned int)(a
&b
)<<1;
a
^=b
;
b
=c
;
}
return a
;
}
};