#include #include using namespace std; int n, x; int Swap(int x); int main() { cin >> n; for ( int i = 0; i < n; ++i ) { cin >> x; cout << Swap(x) << ' '; } return 0; } int Swap(int x) { int aux = x; bool gasit_unu = false; int poz_zero = -1; int poz_unu = -1; int mask = 0; for ( int i = 0; aux; ++i ) { int c = aux % 2; if ( c == 1 && !gasit_unu ) { gasit_unu = true; mask += pow(2, i); poz_unu = i; } if ( c == 0 ) poz_zero = i; aux /= 2; } if ( poz_zero != -1 && gasit_unu && poz_zero > poz_unu ) { mask += pow(2, poz_zero); return (x ^ mask ); } return x; }