⍝ A hard, simple problem:

    grid←5 4⍴'11221134  3456675889'

    grid
1122
1134
  34
5667
5889

    ⍕quzzle grid
 Bottom-right  Bottom-left 
 in 37 moves   in 56 moves 
                           
 1↓            1↓          
 2←            2←          
 2←            2←          
 3↑            3↑          
 4↑            4↑          
 7↑            7↑          
 7←            7←          
 4↓            4↓          
 4↓            4↓          
 3→            3→          
 7↑            7↑          
 7↑            7↑          
 1→            1→          
 5↑            5↑          
 5↑            5↑          
 6←            6←          
 8←            8←          
 9←            9←          
 9↑            9↑          
 8→            8→          
 8→            8→          
 6↓            6↓          
 9←            9←          
 9←            9←          
 1↓            1↓          
 7↓            7↓          
 7←            7←          
 3←            3←          
 4↑            4↑          
 4↑            4↑          
 1→            1→          
 9→            9→          
 9↑            5↓          
 6↑            7←          
 8←            9↑          
 8←            9↑          
 1↓            1←          
               4↓          
               4↓          
               3→          
               2→          
               9→          
               7→          
               5↑          
               5↑          
               1←          
               4←          
               3↓          
               2→          
               7↑          
               9←          
               4↑          
               8↑          
               6→          
               6→          
               1↓          

:If 'v'∊Alpha

    ⍕quzzle 3 3⍴'12345678 '
 Top-right   Bottom-left  Bottom-right 
 in 9 moves  in 9 moves   in 13 moves  
                                       
 6↓          6↓           6↓           
 3↓          5→           3↓           
 2→          4→           2→           
 1→          1↓           1→           
 4↑          2←           4↑           
 5←          4↑           5←           
 3←          8↑           1↓           
 2↓          7→           2←           
 1→          1↓           3↑           
                          1→           
                          8↑           
                          6←           
                          1↓           
:EndIf

Back to: code

Back to: Workspaces