#include <cstdio> using namespace std; int A[1000006]; int main() { int n,t; scanf("%d%d",&n,&t); n = (1<<n); if (!(t&1)) { for ( int i=0; i<n; i++ ) { int a; scanf("%d",&a); printf("%d ",a); } printf("\n"); return 0; } for ( int i=0; i<n; i++ ) scanf("%d",A+i); int _n=n-1; for ( int i=0; i<n; i++ ) printf("%d ",A[(~i)&_n]); printf("\n"); 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 | #include <cstdio> using namespace std; int A[1000006]; int main() { int n,t; scanf("%d%d",&n,&t); n = (1<<n); if (!(t&1)) { for ( int i=0; i<n; i++ ) { int a; scanf("%d",&a); printf("%d ",a); } printf("\n"); return 0; } for ( int i=0; i<n; i++ ) scanf("%d",A+i); int _n=n-1; for ( int i=0; i<n; i++ ) printf("%d ",A[(~i)&_n]); printf("\n"); return 0; } |