Given two integers a and b, return the sum of the two integers without using the operators + and -.

Example 1:
Input: a = 1, b = 2
Output: 3

Example 2:
Input: a = 2, b = 3
Output: 5

Constraints:

  • -1000 <= a, b <= 1000

Approach

  • First do XOR then add by shifting one left (carry)
class Solution {
    public int getSum(int a, int b) {
        while(b != 0) {
            int t = (a & b) << 1;
            a = (a ^ b);
            b = t;
        }
        return a;
    }
}