めぐるセル 横へな 2014.9.6 問題

問題

5×5 の盤面に、左上から順に a〜y の文字が振られている。
cq のように2つの文字を指定する。
この2文字を頂点とした矩形を考える。
この矩形に隣接(斜め含む)するセルを、時計回りに回す。
……という操作を繰り返す。
下図のような感じ:

で。
最後の操作によっと位置が変わったセルの名前を、アルファベット順に答えよ。

入力と詳細

入力は
ab,gg,uj,pt,an,ir,rr
こんな感じ。この入力は上記のアニメーションに対応している。
見ての通り、コンマ区切りで、アルファベット2文字で表現された操作が並んでいる。

出力

最後の操作によっと位置が変わったセルの名前を、アルファベット順に整列したもの。
ただし、最後の操作でひとつも動かなかった場合は、 none を返す。

補足

サンプルデータ

# 入力 期待 状況
0 ab,gg,uj,pt,an,ir,rr hpqsvwxy
1 gs,ok abcdftvwxy
2 gs,sg,ok none
3 aa,bb,hh,nn hiostwxy
4 ae,ko,uy,cw bdgilnqsvx
5 am,gs,am,gs,am,gs,am,gs cfhkmqrvwx
6 ay none
7 gs,ay defjkoptuv
8 bx,ay none
9 ft,ay defjkoptuv
10 ab,cd,ef,gh,ij,kl,mn,op,qr,st,uv,wx cdjmnry
11 wx,uv,st,qr,op,mn,kl,ij,gh,ef,cd,ab kmoxy
12 am,cj,ac,em,ss,cy,aa,ee,ff,vp none
13 uf,oq,gn,ss,ca,hv,ej none
14 cc,wk,uu,ws,bk,aa,vv bei
15 tr,ou,ll,pp,jh,vf,yy,nr,rr,oo rxy
16 ky,ov,ri,qm,nn,ee,ws,em,ca,ak biju
17 ty nosx
18 ll,uh,hq,ss,nx,ry,ku,ab,jj efouv
19 yl,mu,qj,ss,ep mnqru
20 kj,ee,qk fglruv
21 xi,wd,hf ciknqr
22 fx,ak,cc,ce bdhijnp
23 li,jf,pp,qm,hg,sf akntuwx
24 jw bcdeglqv
25 uk,oe,xr dglmoqsy
26 bb,ov,pd,dd,xk,is,hh,xd,xx,kq,pp,ku cfhjopqvy
27 iq,fn,il,ww,ox,la,or,ga,wg,ef,us cfgjopvxy
28 km,po abcdenqrst
29 tc,mh,cw abefjkoptu
30 fm,jx,xx,pi,gs,au,uq,ut,ap,vb cdghjmortux
31 ik,xl,si abcdflorvwx
32 nu,cc,lv,bu,tt,ww,xk,ia,in,sa,my abcefgpqrstu
33 tt,ak,xh,tk,oo,yr,na,yv,gm,vh degiklmnquwx
34 kk,ob,kk,fm,xk acdegjlopqruy
35 uq,ko,pf,yy,ig,tu,ve,ve,qy,mh,oo,dv befjkoqrtuwxy
36 aj,hb,ar,ii,np,ki,hg,vd cefhjlmopqtwxy
37 vv,sf,ww,my,mm,sq,fb,ly,fu,ls bfghkmnptuvwxy
38 jj,bp,gs abdefijkprtuvwxy
39 sv,sn,mn,gn,gi abcdefhjnpqtuvxy

C/C++/Java 用のテストデータ