天天看點

兩整數之和

連結

給你兩個整數 a 和 b ,不使用 運算符 + 和 - ​​​​​​​,計算并傳回兩整數之和。

import java.util.Scanner;

class Solution {
    /**
     * a + b:     * 0 + 1 = 1     * 1 + 1 = 0     * 進位:     * a & b     * @param a     * @param b     * @return
     */
    public static int getSum(int a, int b) {
        int sum = b;
        while (a != 0) {
            sum = a ^ b;
            a = (a & b) << 1;
            b = sum;
        }
        return sum;
    }

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            System.out.println(getSum(in.nextInt(), in.nextInt()));
        }
    }
}
           

心之所向,素履以往 生如逆旅,一葦以航

繼續閱讀