fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int next(int n){
  5. if(n<=0) return 0;
  6. int p = 1<<20; // n < 10^6
  7. while(!(p&n)) p >>= 1;
  8. return n^p;
  9. }
  10.  
  11. int main() {
  12. int t,n;
  13. cin>>t;
  14. while(t--){
  15. cin>>n;
  16. cout<<next(n)<<endl;
  17. }
  18. return 0;
  19. }
Success #stdin #stdout 0.01s 5288KB
stdin
1
5
stdout
1