搜索引擎怎么收录网站,苏州吴江城乡和住房建设局网站,photoshop网站设计,北京网站备案要求吗371. 两整数之和
给你两个整数 a 和 b #xff0c;不使用 运算符 和 - #xff0c;计算并返回两整数之和。
示例 1#xff1a;
输入#xff1a;a 1, b 2 输出#xff1a;3 示例 2#xff1a;
输入#xff1a;a 2, b 3 输出#xff1a;5
提示不使用 运算符 和 - 计算并返回两整数之和。
示例 1
输入a 1, b 2 输出3 示例 2
输入a 2, b 3 输出5
提示
-1000 a, b 1000 解题思路
使用位运算模拟计算机的二进制加减法
维护一个变量in代表二进制的进位获取ab每一位的取值情况在不产生进位的情况下(a1,b1代表ab当前位的二进制取值)当前位的结果即为a1b1in并且判断进位情况只有当a1和b1都为1或者a1b1其他一个为1in为1的情况下才能产生进位
代码
class Solution {public int getSum(int a, int b) {int in0,res0;for(int i1;i32;i){int a1a1,b1b1;int cur(a1^b1^in);res^(cur(i-1));if(a11b11||(a1^b1)1in1){in1;}else in0;a1;b1;}return res;}
}