fork(1) download
  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. long q, x, res, two;
  5. cin >> q;
  6. for(long i = 0; i < q; ++ i){
  7. cin >> x;
  8. res = 0;
  9. two = 1; // two = 2^0
  10. while(x > 0){
  11. if(x % 2 == 0) // проверяем равен ли бит нулю
  12. res += two;
  13. x >>= 1; // двигаемся к следующему биту
  14. two <<= 1; // увеличиваем степень двойки
  15. }
  16. cout << res << endl;
  17. }
  18. return 0;
  19. }
Success #stdin #stdout 0s 4408KB
stdin
5
1
7
4294967295
42
451
stdout
0
0
0
21
60