#include <iostream>
using namespace std;
int two_to(int a){
int power = 1;
for (int i = 0; i < a; i++){
power *= 2;
}
return power;
}
int min(int a, int b){
if (a < b) return a;
return b;
}
int value[20][1 << 19];
int suma_galezi[20][1 << 19];
int main() {
int k;
cin >> k;
for (int i = 0; i < k; i++){
for (int j = 0; j < two_to(i); j++){
cin >> value[i][j];
}
}
for (int j = 0; j < two_to(k-1); j++){
suma_galezi[k-1][j] = value[k-1][j];
}
for (int i = k - 2; i >= 0; i--){
for (int j = 0; j < two_to(i); j++){
suma_galezi[i][j] = value[i][j] + min(
suma_galezi[i+1][2*j],
suma_galezi[i+1][2*j + 1]
);
}
}
cout << suma_galezi[0][0] << "\n";
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IHR3b190byhpbnQgYSl7CiAgICBpbnQgcG93ZXIgPSAxOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBhOyBpKyspewogICAgICAgIHBvd2VyICo9IDI7CiAgICB9CiAgICByZXR1cm4gcG93ZXI7Cn0KCmludCBtaW4oaW50IGEsIGludCBiKXsKICAgIGlmIChhIDwgYikgcmV0dXJuIGE7CiAgICByZXR1cm4gYjsKfQoKaW50IHZhbHVlWzIwXVsxIDw8IDE5XTsKaW50IHN1bWFfZ2FsZXppWzIwXVsxIDw8IDE5XTsKCmludCBtYWluKCkgewogICAgaW50IGs7CiAgICBjaW4gPj4gazsKICAgIAogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBrOyBpKyspewogICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgdHdvX3RvKGkpOyBqKyspewogICAgICAgICAgICBjaW4gPj4gdmFsdWVbaV1bal07CiAgICAgICAgfQogICAgfQoKICAgIGZvciAoaW50IGogPSAwOyBqIDwgdHdvX3RvKGstMSk7IGorKyl7CiAgICAgICAgc3VtYV9nYWxlemlbay0xXVtqXSA9IHZhbHVlW2stMV1bal07CiAgICB9CgogICAgZm9yIChpbnQgaSA9IGsgLSAyOyBpID49IDA7IGktLSl7CiAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCB0d29fdG8oaSk7IGorKyl7CiAgICAgICAgICAgIHN1bWFfZ2FsZXppW2ldW2pdID0gdmFsdWVbaV1bal0gKyBtaW4oCiAgICAgICAgICAgICAgICBzdW1hX2dhbGV6aVtpKzFdWzIqal0sIAogICAgICAgICAgICAgICAgc3VtYV9nYWxlemlbaSsxXVsyKmogKyAxXQogICAgICAgICAgICApOwogICAgICAgIH0KICAgIH0KCiAgICBjb3V0IDw8IHN1bWFfZ2FsZXppWzBdWzBdIDw8ICJcbiI7CgogICAgcmV0dXJuIDA7Cn0=