#include <iostream>
using namespace std;
typedef unsigned long ul;
int main()
{
    ul n, t;
    cin >> n >> t;
    ul size = 1 << n;
    int *deck = new int[size];
    for (int i = 0; i < size; i++)
    {
        cin >> deck[i];
    }
    if (t % 2 == 0)
    {
        for (int i = 0; i < size; ++i)
        {
            cout << deck[i];
            if (i != size - 1)
                cout << " ";
        }
    }
    else
    {
        for (int i = size - 1; i >= 0; --i)
        {
            cout << deck[i];
            if (i != 0)
                cout << " ";
        }
    }
    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 30 31 32 33 34 35 36 37 38 39 | #include <iostream> using namespace std; typedef unsigned long ul; int main() { ul n, t; cin >> n >> t; ul size = 1 << n; int *deck = new int[size]; for (int i = 0; i < size; i++) { cin >> deck[i]; } if (t % 2 == 0) { for (int i = 0; i < size; ++i) { cout << deck[i]; if (i != size - 1) cout << " "; } } else { for (int i = size - 1; i >= 0; --i) { cout << deck[i]; if (i != 0) cout << " "; } } return 0; } | 
 
            
         English
                    English