1. 16
  1.  

  2. 2
    def d(w,c)s=->w{c.map{|d|(d&[w])[0]?0:d-[-w]}-[0]};c[0]?(v=c[0][0])?d(w+[v],s[v])||d(w+[-v],s[-v]):!1:w end
    
    1. 1

      Ah, Haskell code golf. It’s like APL, but for Monads instead of matrices!