Python中两个整数的总和

假设我们有两个整数a和b。我们的任务是找到这两个整数的和。一个约束是,我们不能使用+或-之类的任何运算符。因此,如果a = 5且b = 7,则结果将为12。

为了解决这个问题,我们将遵循以下步骤-

  • 为了求解,我们将使用按位逻辑运算符

  • 如果b = 0,则返回a

  • 否则,通过将XOR b和a和b左移一次来递归地使用求和函数

范例(Python)

让我们看下面的实现以更好地理解-

#include <iostream>
using namespace std;
class Solution {
   public:
   int getSum(int a, int b) {
      return b == 0?a:getSum(a^b, (unsigned int)(a&b)<<1);
   }
};
main(){
   Solution ob;
   cout<<ob.getSum(5,7)<<endl;
}

输入项

a = 5
b = 7

输出结果

12