#include<bits/stdc++.h> int tab[1048576]; int pot(int a); int main() { int n, t; scanf("%d %d", &n, &t); bool czyOdwrocone = (t % 2 == 1); int pot2 = pot(n); for(int i = 0; i < pot2; i++) { scanf("%d", &tab[i]); if(!czyOdwrocone) { printf("%d ", tab[i]); } } if(!czyOdwrocone) { return 0; } for(int i = pot2 - 1; i >= 0; i--) { printf("%d ", tab[i]); } return 0; } int pot(int a) { int akt = 1; for(int i = 0; i < a; i++) { akt *= 2; } return akt; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #include<bits/stdc++.h> int tab[1048576]; int pot(int a); int main() { int n, t; scanf("%d %d", &n, &t); bool czyOdwrocone = (t % 2 == 1); int pot2 = pot(n); for(int i = 0; i < pot2; i++) { scanf("%d", &tab[i]); if(!czyOdwrocone) { printf("%d ", tab[i]); } } if(!czyOdwrocone) { return 0; } for(int i = pot2 - 1; i >= 0; i--) { printf("%d ", tab[i]); } return 0; } int pot(int a) { int akt = 1; for(int i = 0; i < a; i++) { akt *= 2; } return akt; } |