#include<bits/stdc++.h>
using namespace std;
int n,h,k;
string t[2]={"/\\","/__\\"};
void put2(int i){
//1层
if(i&1){
cout << t[0];
}else{
cout << t[1];
}
if(i<3)return;
//2
/* if(i%4==3){
cout << " " << t[0];
}else if(i%4==0){
cout << t[1];
}
if(i<5)return;*/
return;
}
void put3(int i){
k=i%8;
if(k==5){
cout << " ";put2(i);
}else if(k==6){
cout << " ";put2(i);
}else if(k==7){
cout << " ";put2(i);
}else if(k==0)put2(i);
return;
}
void put4(int i){
int k=i%16;
if(k>8||k==0){
int x=32-k*2;
while(x--&&k)cout << " ";
put2(i);
put3(i);
}
return;
}
void put5(int i){
int k=i%32;
if(k>16 || k==0){
int x=64-k*2;
while(k&&x--)cout << " ";
put2(i);
put3(i);
put4(i);
}
}
void put(int i,int m){
//cout << i << " " << m << " ";
if(m<2){
put2(i);
// put3(i);
// put4(i);
// put5(i);
// cout << "r";
return ;
}
int d=1<<m;
int k=i%d;
if(k>(d/2)||k==0){
int x=(d-k)<<1;
while(x-- && k!=0){
cout << " ";
}
for(int j=1;j<=m-1;j++){
// cout << "d" << i << " " << j << " ";
put(i,j);
}
}
// cout << "r";
return;
}
int main(){
cin >> n;
h=1<<n;
for(int i=1;i<=h;i++){
for(int j=1;j<=h-i;j++)cout << " ";
for(int j=1;j<=n;j++){
put(i,j);
}
/* put2(i);
put3(i);
put4(i);
put5(i);*/
cout << endl;
}
return 0;
}
65行的k=i%d写成k=i%m,查错查了我2小时