#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define all(x) (x).begin(),(x).end() #define rall(x) (x).rbegin(),(x).rend() #define rep(i,n) for(int i=0; i pi; typedef pair pl; typedef pair plc; int main() { int k; int t[5000]; cin >> k; if (k == 1) { t[0] = 1, t[1] = 3, t[2] = 2; } else { t[0] = (pow(2, k) - 1) / 2 + 1; int n = (pow(2, k) - 2); for (int i = 1,cnt=1; i <= n; i++) { if (i % 2 == 0) { t[i] = t[0] + cnt; cnt++; } else { t[i] = t[0] - cnt; } } } for (int i = 0; i < pow(2, k)-1; i++) { cout << t[i]; if (i != pow(2, k) - 2) cout << " "; } cout << endl; return 0; }