Differences From Artifact [4f413ed4f5088aec]:
- File        
src/solver.d
- 2012-07-14 15:43:48 - part of checkin [901abf2f53] on branch trunk - optimized multiple lambda target. (user: kinaba) [annotate]
 
To Artifact [dca756d0b000be21]:
- File        
src/solver.d
- 2012-07-14 15:47:12 - part of checkin [68c41bdbe0] on branch trunk - Hori-Susumu kun. (user: kinaba) [annotate]
 
   53                  Tuple!(char,int)[] cand;                                              53                  Tuple!(char,int)[] cand;
   54                  char c = 'W';                                                         54                  char c = 'W';
   55                  if( la.empty ) {                                                      55                  if( la.empty ) {
   56                          cand = search(g, ro, [li], death);                            56                          cand = search(g, ro, [li], death);
   57                  } else {                                                              57                  } else {
   58                          cand ~= search(g, ro, la, death);                             58                          cand ~= search(g, ro, la, death);
   59                  }                                                                     59                  }
                                                                                        >    60                  if(cand.empty) {
                                                                                        >    61                          const(Pos)[] tgt;
                                                                                        >    62                          for(int y=1; y<=g.map.H; ++y)
                                                                                        >    63                          for(int x=1; x<=g.map.W; ++x)
                                                                                        >    64                                  if(g.map[y,x]=='.')
                                                                                        >    65                                          if(g.map[y+1,x]=='*'||g.map[y+1,x-1]=='*
                                                                                        >    66                                           ||g.map[y,x+1]=='*'||g.map[y,x-1]=='*')
                                                                                        >    67                                                  tgt ~= new Pos(y,x);
                                                                                        >    68                          cand ~= search(g, ro, tgt, death);
                                                                                        >    69                  }
                                                                                        >    70  
                                                                                        >    71                  if(cand.empty)
   60                  cand ~= tuple('W',int.max);                                      |    72                          cand ~= tuple('W',int.max);
   61                  sort!((Tuple!(char,int) c1, Tuple!(char,int) c2){                     73                  sort!((Tuple!(char,int) c1, Tuple!(char,int) c2){
   62                          if(c1[1] != c2[1])                                            74                          if(c1[1] != c2[1])
   63                                  return c1[1] < c2[1];                                 75                                  return c1[1] < c2[1];
   64                          return c1[0] < c2[0];                                         76                          return c1[0] < c2[0];
   65                  })(cand);                                                             77                  })(cand);
   66                  c = cand[0][0];                                                       78                  c = cand[0][0];
   67                                                                                        79