#include<iostream> using namespace std; int two_pow(int h) { int a=2; if(h==1) return a; else return a*two_pow(h-1); } int main( ) { int d, n, t; cin >> n >> t; d = two_pow(n); int * A = new int[d]; for(int i=0; i<d; i++) cin >> A[i]; if(t%2==0) for(int i=0; i<d; i++) cout << A[i] << " "; else for(int i=d-1; i>=0; i--) cout << A[i] << " "; cout << endl; return 0; }
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 | #include<iostream> using namespace std; int two_pow(int h) { int a=2; if(h==1) return a; else return a*two_pow(h-1); } int main( ) { int d, n, t; cin >> n >> t; d = two_pow(n); int * A = new int[d]; for(int i=0; i<d; i++) cin >> A[i]; if(t%2==0) for(int i=0; i<d; i++) cout << A[i] << " "; else for(int i=d-1; i>=0; i--) cout << A[i] << " "; cout << endl; return 0; } |