//GNC #include #include #include #include #include #include #include //#define DB() {cout<<"ph"<<__LINE__<<":"< array; char slide_char[2]={'s','S'}, hop_char[2]={'h', 'H'}; string res; int sp_pos; void slide_left(string& f) { f[sp_pos]=f[sp_pos+1]; f[sp_pos+1]='_'; sp_pos++; res += slide_char[0]; } void slide_right(string& f) { f[sp_pos]=f[sp_pos-1]; f[sp_pos-1]='_'; sp_pos--; res += slide_char[1]; } void hop_left(string& f) { f[sp_pos]=f[sp_pos+2]; f[sp_pos+2]='_'; sp_pos+=2; res += hop_char[0]; } void hop_right(string& f) { f[sp_pos]=f[sp_pos-2]; f[sp_pos-2]='_'; sp_pos-=2; res += hop_char[1]; } int main(void){ int ncases; ifstream cin("kindergarten.in"); cin>>ncases; for ( int ca=1 ; ca<=ncases ; ca++ ) { int nc,girls, boys; cin>>nc>>girls>>boys; slide_char[0]='s'; slide_char[1]='S'; hop_char[0]='h'; hop_char[1]='H'; if ( girls>boys ) { swap(girls, boys); swap(slide_char[0],slide_char[1]); swap(hop_char[0],hop_char[1]); } int N=girls+boys+1; string f(N,' '); for ( int i=0 ; i=2 && f[sp_pos-1]=='B' ) { DB(); hop_right(f); } if ( sp_pos==0 || f[sp_pos-1]=='B' ) break; DB(); slide_right(f); while ( sp_pos 50){ cout << s.substr(0,50)<