/* author: Leonardone @ NEETSDKASU */
#include <stdio.h>
void string(char c, int n) {
while (n-- > 0) {
}
}
void printItem(int p) {
}
void btree2(int n) {
int a = (1 << n) - 1;
int b = ((a + 1) >> 1) - 1;
int c = 1;
int p = 1;
int i, j;
for (i = 0; i < n; i++) {
string(' ', b << 1);
for (j = 0; j < c; j++) {
if (j > 0) {
string(' ', a << 1);
}
printItem(p);
p++;
}
c <<= 1;
a = b;
b = ((a + 1) >> 1) - 1;
}
}
int main(void) {
int i;
for (i = 1; i <= 6; i++) {
btree2(i);
string('-', 64);
}
return 0;
}
LyogYXV0aG9yOiBMZW9uYXJkb25lIEAgTkVFVFNES0FTVSAqLwojaW5jbHVkZSA8c3RkaW8uaD4KCnZvaWQgc3RyaW5nKGNoYXIgYywgaW50IG4pIHsKCXdoaWxlIChuLS0gPiAwKSB7CgkJcHV0Y2hhcihjKTsKCX0KfQoKdm9pZCBwcmludEl0ZW0oaW50IHApIHsKCXByaW50ZigiJTAyZCIsIHApOwp9Cgp2b2lkIGJ0cmVlMihpbnQgbikgewoJaW50IGEgPSAoMSA8PCBuKSAtIDE7CglpbnQgYiA9ICgoYSArIDEpID4+IDEpIC0gMTsKCWludCBjID0gMTsKCWludCBwID0gMTsKCWludCBpLCBqOwoJCglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJc3RyaW5nKCcgJywgYiA8PCAxKTsKCQlmb3IgKGogPSAwOyBqIDwgYzsgaisrKSB7CgkJCWlmIChqID4gMCkgewoJCQkJc3RyaW5nKCcgJywgYSA8PCAxKTsKCQkJfQoJCQlwcmludEl0ZW0ocCk7CgkJCXArKzsKCQl9CgkJYyA8PD0gMTsKCQlhID0gYjsKCQliID0gKChhICsgMSkgPj4gMSkgLSAxOwoJCXB1dGNoYXIoJ1xuJyk7Cgl9Cn0KCgppbnQgbWFpbih2b2lkKSB7CglpbnQgaTsKCQoJZm9yIChpID0gMTsgaSA8PSA2OyBpKyspIHsKCQlidHJlZTIoaSk7CgkJc3RyaW5nKCctJywgNjQpOwoJCXB1dGNoYXIoJ1xuJyk7Cgl9CgkKCXJldHVybiAwOwp9Cg==