@@ -55,13 +55,18 @@ bool[][] forbidden_cell; char act(const(Game) g, string death, int breath) { - const Pos ro = g.map.robot; - const Pos[] la = g.map.lambdas(); - const Pos[] ra = g.map.razors(); - const Pos li = g.map.lift; - const Pos[] hi = g.map.objects('W'); + const Pos ro = g.map.robot; + const Pos li = g.map.lift; + Pos[] la = g.map.lambdas(); + sort!((Pos a,Pos b){ + int ad=abs(a.y-li.y)+abs(a.x-li.x); + int bd=abs(b.y-li.y)+abs(b.x-li.x); + return ad>bd;; + })(la); + Pos[] ra = g.map.razors(); + const(Pos)[] hi = g.map.objects('W'); Tuple!(char,int)[] cand; char c = 'W'; if( la.empty ) {