#include<cstdio> using namespace std; int main () { int nn,t; scanf("%d %d", &nn, &t); long long n = 1L<<nn; int a[n]; for(int i = 0; i < n; i++) scanf("%d", &a[i]); if (t % 2) { for(int i = 0; i < n/2; i++) { int z = a[i]; a[i] = a[n-i-1]; a[n-i-1] = z; } } for(int i = 0; i < n; i++) { printf("%d ", a[i]); } 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 | #include<cstdio> using namespace std; int main () { int nn,t; scanf("%d %d", &nn, &t); long long n = 1L<<nn; int a[n]; for(int i = 0; i < n; i++) scanf("%d", &a[i]); if (t % 2) { for(int i = 0; i < n/2; i++) { int z = a[i]; a[i] = a[n-i-1]; a[n-i-1] = z; } } for(int i = 0; i < n; i++) { printf("%d ", a[i]); } return 0; } |