分析:这是一道考察发散思维的很有意思的题目。当我们习以为常的东西被限制使用的时候,如何突破常规去思考,就是解决这个问题的关键所在。

     对数字做运算,除了四则运算之外,也就只剩下位运算了。

 1 int AddWithoutArithmetic(int num1, int num2)
2 {
3 if(num2 == 0)
4 return num1;
5
6 int sum = num1 ^ num2;
7 int carry = (num1 & num2) << 1;
8
9 return AddWithoutArithmetic(sum, carry);
10 }

相关文章:

  • 2021-05-14
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-08-01
  • 2022-12-23
  • 2022-12-23
  • 2021-12-25
相关资源
相似解决方案