#include <iostream>
using namespace std;
int main() {
int a, b;
cin >> a >> b;
while (b) {
a ^= b;
b = ((a ^ b) & b) << 1;
}
cout << a << endl;
return 0;
}
这么写是可以过的,就是当有负数的时候要执行将近32次,哪位大佬测一下是这个快还是a+b快。
另外本蒟蒻突发奇想,觉得可以用类似的算法利用bitset
写高精度,但是不会输出,各位大佬帮我想一想叭。