fork(8) download
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int n, lata;
  6. int *tablica;
  7. bool usuwamyOdDrugiego, tmp;
  8.  
  9. int main()
  10. {
  11. cin >> n;
  12. for(int i=0; i<n; i++){
  13. tmp = true;
  14. cin >> lata;
  15. tablica = new int[lata];
  16. for(int j=0; j<lata; j++)
  17. *(tablica+j) = j+1;
  18.  
  19. while(lata != 1){
  20. usuwamyOdDrugiego = tmp;
  21. if(lata%2 != 0){
  22. if(usuwamyOdDrugiego) tmp = false;
  23. else tmp = true;
  24. }
  25.  
  26. for(int k=(usuwamyOdDrugiego?0:1); k<lata; k+=2)
  27. *(tablica+k/2) = *(tablica+k);
  28.  
  29. if(lata%2 == 0 || usuwamyOdDrugiego == false)
  30. lata = lata/2;
  31. else
  32. lata = lata/2+1;
  33. }
  34. cout << *tablica << endl;
  35. //delete[] tablica;
  36. }
  37. return 0;
  38. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
Standard output is empty