A + B 问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了A + B 问题相关的知识,希望对你有一定的参考价值。

A + B 问题 

给出两个整数a和b, 求他们的和, 但不能使用 + 等数学运算符。

 注意事项

你不需要从输入流读入数据,只需要根据aplusb的两个参数a和b,计算他们的和并返回就行。

说明

a和b都是 32位 整数么?

  • 是的

我可以使用位运算符么?

  • 当然可以
样例

如果 a=1 并且 b=2,返回3

挑战 

显然你可以直接 return a + b,但是你是否可以挑战一下不这样做?

标签 
 
 1 class Solution {
 2 public:
 3     /*
 4      * @param a: The first integer
 5      * @param b: The second integer
 6      * @return: The sum of a and b
 7      */
 8     int aplusb(int a, int b) {
 9         // write your code here, try to do it without arithmetic operators.
10         int result=0,num=0;
11 
12         do {
13             result = a ^ b;
14             num = (a & b) << 1;
15             a = result;
16             b = num;
17         }
18         while(b != 0);
19 
20         return result;
21     }
22 };

 

以上是关于A + B 问题的主要内容,如果未能解决你的问题,请参考以下文章

编写代码片段的更简洁的方法

apriori片段代码

Android 动画嵌套片段

scrapy按顺序启动多个爬虫代码片段(python3)

[Codeforces Round #522 (Div. 2, based on Technocup 2019 Elimination Round 3)][C. Playing Piano](代码片段

从bottomNavigationView导航到片段B时保存片段A的状态