/* Look at me! Look at me! Look at how large the monster inside me has become! */ #include #include #include #include #include #define FIT(a,b) for(vector::iterator a=b.begin();a!=b.end();a++) #define FITP(a,b) for(vector >::iterator a=b.begin();a!=b.end();a++) #define RIT(a,b) for(vector::reverse_iterator a=b.end();a!=b.begin();++a) #include #define ROF(a,b,c) for(int a=b;a>=c;--a) #include #include #define FOR(a,b,c) for(int a=b;a<=c;++a) #define REP(a,b) for(register int a=0;a #include #include #include #include #include #define f cin #define g cout #include #define debug cerr<<"OK"; #define pii pair #define mp make_pair #define pb push_back #define fi first #define se second #define ll long long #define ull unsigned long long #define mod 1000000007 #define MOD 32416190071 #define N 500100 #define SQR 350 #define inf 1<<30 #define div pula #define hash pizda using namespace std; string s; char a[12][10100]; int n,t; void fa(int i,int j) { a[i][j-1]='('; a[i][j+1]=')'; if(i<=5) { --j; FOR(k,1,3) { ++i; a[i][j]='|'; } } else { ++j; FOR(k,1,3) { --i; a[i][j]='|'; } } } int main () { #ifndef ONLINE_JUDGE freopen("a.in","r",stdin); freopen("a.out","w",stdout); #endif f>>n; a[1][5]='|'; a[1][7]='\\'; a[2][5]='|'; a[2][8]='}'; a[3][5]='|'; a[3][7]='/'; a[4][5]='|'; a[4][6]='/'; a[5][4]='/'; a[5][5]='|'; a[6][3]='/'; a[6][5]='|'; a[7][2]='{'; a[7][5]='|'; a[7][7]='\\'; a[8][3]='\\'; a[8][4]='_'; a[8][5]='|'; a[8][6]='_'; a[8][7]='/'; a[9][5]='|'; a[9][6]='\\'; a[10][5]='|'; a[10][6]='_'; a[10][7]='}'; a[4][10]='4'; a[6][10]='4'; t=15; FOR(i,1,n) { f>>s; if(s=="C") { a[11][t]='@'; fa(11,t); } if(s=="C#") { a[11][t]='@'; a[11][t-2]='#'; fa(11,t); } if(s=="D") { a[10][t]='@'; fa(10,t); } if(s=="D#") { a[10][t]='@'; a[10][t-2]='#'; fa(10,t); } if(s=="E") { a[9][t]='@'; fa(9,t); } if(s=="F") { a[8][t]='@'; fa(8,t); } if(s=="F#") { a[8][t]='@'; a[8][t-2]='#'; fa(8,t); } if(s=="G") { a[7][t]='@'; fa(7,t); } if(s=="G#") { a[7][t]='@'; a[7][t-2]='#'; fa(7,t); } if(s=="A") { a[6][t]='@'; fa(6,t); } if(s=="A#") { a[6][t]='@'; a[6][t-2]='#'; fa(6,t); } if(s=="B") { a[5][t]='@'; fa(5,t); } if(s=="C2") { a[4][t]='@'; fa(4,t); } if(s=="C2#") { a[4][t]='@'; a[4][t-2]='#'; fa(4,t); } t+=5; } a[1][t]='+'; FOR(i,2,8) a[i][t]='|'; a[9][t]='+'; for(int i=1;i<=10;i+=2) FOR(j,1,t) if(!a[i][j]) a[i][j]='-'; for(int i=2;i<=10;i+=2) FOR(j,1,t) if(!a[i][j]) a[i][j]=' '; FOR(j,1,t) if(!a[11][j]) a[11][j]=' '; FOR(i,1,11) { g<<(a[i]+1); if(i!=11) g<<"\n"; } return 0; }