#include <cstdio>
using namespace std;
#define MAX 2000000
int buf[MAX];
int main() {
int x=0,i,n,t,N = 1;
scanf("%d %d", &n,&t);
N<<=n;
for(i=0;i<N;i++) {
scanf("%d", &buf[i]);
}
if(t&1) x=N-1;
for(i=0;i<N;i++) {
printf("%d ", buf[i^x]);
}
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include <cstdio> using namespace std; #define MAX 2000000 int buf[MAX]; int main() { int x=0,i,n,t,N = 1; scanf("%d %d", &n,&t); N<<=n; for(i=0;i<N;i++) { scanf("%d", &buf[i]); } if(t&1) x=N-1; for(i=0;i<N;i++) { printf("%d ", buf[i^x]); } return 0; } |
English