fork(1) download
  1. import sys
  2. o,l,v,k,w="MYPOCKET",[list(e)for e in sys.stdin],[],enumerate,len
  3. def f(z,q,t):
  4. for r,c in(z,q+1),(z,q-1),(z+1,q),(z-1,q):
  5. if w(l)>r>=0 and 0<=c<w(l[r])and o[t]==l[r][c]:
  6. v.append((r,c))
  7. if f(r,c,(t+1)%w(o)):return 1
  8. else:v.pop()
  9. if z==1 and(0,q)in v or z==0 and(z,q+1)in v:return 1
  10. for i,x in k(l[0]):
  11. v=[(0,i)]
  12. if x==o[0]and f(0,i,1):break
  13. for i in range(1,w(l)-1):b=[y for x,y in sorted(v)if x==i];print"".join(["".join(e)if w(e)>0 else" "for e in[l[i][b[j-1]+1:y]for j,y in k(b)][1:]])
Success #stdin #stdout 0.01s 8976KB
stdin
MYPHEIF
YFOCKVH
MBNDEIF
TEUFTMY
ESNDUWP
KBOVUVO
CENWFKC
OPYMTEB
stdout
F  
BND
EUF  
SNDUW
BOVUV
ENWF