#include <stdio.h>
#include <stdlib.h>
int main() {
	int n, t;
	scanf("%d %d", &n, &t);
	n = 1 << n;
	int* tab = (int*) malloc(sizeof(int)*n);
	for (int i = 0; i < n; i++)
		scanf("%d", tab+i);
	if (t % 2)
		for (int i = n-1; i >= 0; i--)
			printf("%d ", tab[i]);
	else
		for (int i = 0; i < n; i++)
			printf("%d ", tab[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 | #include <stdio.h> #include <stdlib.h> int main() { int n, t; scanf("%d %d", &n, &t); n = 1 << n; int* tab = (int*) malloc(sizeof(int)*n); for (int i = 0; i < n; i++) scanf("%d", tab+i); if (t % 2) for (int i = n-1; i >= 0; i--) printf("%d ", tab[i]); else for (int i = 0; i < n; i++) printf("%d ", tab[i]); return 0; } | 
 
            
         English
                    English