|
15 | 15 | N1 is N - 1,
|
16 | 16 | read_grid(Stream, N1, Grid).
|
17 | 17 |
|
18 |
| -move(dx(-1), dy(0), w). % W |
19 |
| -move(dx(1), dy(0), e). % E |
20 |
| -move(dx(0), dy(-1), n). % N |
21 |
| -move(dx(0), dy(1), s). % S |
22 |
| -move(dx(-1), dy(-1), nw). % NW |
23 |
| -move(dx(-1), dy(1), sw). % SW |
24 |
| -move(dx(1), dy(-1), ne). % NE |
25 |
| -move(dx(1), dy(1), se). % SE |
| 18 | +move(dx(-1), dy(0), W). % W |
| 19 | +move(dx(1), dy(0), E). % E |
| 20 | +move(dx(0), dy(-1), N). % N |
| 21 | +move(dx(0), dy(1), S). % S |
| 22 | +move(dx(-1), dy(-1), NW). % NW |
| 23 | +move(dx(-1), dy(1), SW). % SW |
| 24 | +move(dx(1), dy(-1), NE). % NE |
| 25 | +move(dx(1), dy(1), SE). % SE |
26 | 26 |
|
27 | 27 | within_bounds(N, X, Y) :-
|
28 | 28 | X >= 0, X < N,
|
|
56 | 56 | length(Grid, N),
|
57 | 57 | ( bfs(Grid, N, Path)
|
58 | 58 | -> reverse(Path, Moves)
|
59 |
| - ; fail |
| 59 | + ; Moves = 'IMPOSSIBLE' |
60 | 60 | ).
|
0 commit comments