Copyright (c) James A. Storer

Sliding Three Part 2

Generalized rectilinear movement is computed.
One move is pushing a single piece with one finger,
where that piece may push or drag other pieces with it.
A second finger may NOT be used to aid movement,
prevent a piece from being dragged to far, etc.

If pieces (except for X) are not allowed to push other pieces,
moves 11, 16, 21, 24, 28, 33 can each be replaced by 2 moves
for a solution of 49 rectilinear moves.
In additon, moves 14, 30 can each be replaced by two moves
for a solution of 51 restricted rectilinear moves.

######################################################################
Generalized Rectilinear steps: 43
######################################################################

#0:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X A A A A B B B B X  
  X A b b A B a a B X  
  L L b b M M a a R R  
  L L     M M     R R  

#1. Move a:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X A A A A B B B B X  
  X A b b A B     B X  
  L L b b M M a a R R  
  L L     M M a a R R  

#2. Move L:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X A A A A B B B B X  
  X A b b A B     B X  
L L   b b M M a a R R  
L L       M M a a R R  

#3. Move b:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X A A A A B B B B X  
  X A     A B     B X  
L L b b   M M a a R R  
L L b b   M M a a R R  

#4. Move X:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X A A A A B B B B X    
X A     A B     B X    
L L b b   M M a a R R  
L L b b   M M a a R R  

#5. Move R:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X A A A A B B B B X    
X A     A B     B X    
L L b b   M M a a      
L L b b   M M a a      

#6. Move a:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X A A A A B B B B X a a
X A     A B     B X a a
L L b b   M M          
L L b b   M M          

#7. Move M:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X A A A A B B B B X a a
X A     A B     B X a a
L L b b           M M  
L L b b           M M  

#8. Move B:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X A A A A         X a a
X A     A         X a a
L L b b B B B B   M M  
L L b b B     B   M M  

#9. Move A:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X         A A A A X a a
X         A     A X a a
L L b b B B B B   M M  
L L b b B     B   M M  

#10. Move b:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X b b     A A A A X a a
X b b     A     A X a a
L L     B B B B   M M  
L L     B     B   M M  

#11. Move M:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X b b     A A A A X a a
X b b     A     A X a a
L L B B B B M M        
L L B     B M M        

#12. Move a:
X Y Y X X X X Z Z X R R
X Y X X X X X X Z X R R
X b b     A A A A X    
X b b     A     A X    
L L B B B B M M a a    
L L B     B M M a a    

#13. Move R:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b     A A A A X    
X b b     A     A X    
L L B B B B M M a a R R
L L B     B M M a a R R

#14. Move A:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
    X b b     A A A A X
    X b b     A     A X
L L B B B B M M a a R R
L L B     B M M a a R R

#15. Move L:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
L L X b b     A A A A X
L L X b b     A     A X
    B B B B M M a a R R
    B     B M M a a R R

#16. Move M:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
L L X b b M M A A A A X
L L X b b M M A     A X
  B B B B       a a R R
  B     B       a a R R

#17. Move B:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
L L X b b M M A A A A X
L L X b b M M A     A X
        B B B B a a R R
        B     B a a R R

#18. Move L:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
    X b b M M A A A A X
    X b b M M A     A X
L L     B B B B a a R R
L L     B     B a a R R

#19. Move X:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b M M A A A A X    
X b b M M A     A X    
L L     B B B B a a R R
L L     B     B a a R R

#20. Move R:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b M M A A A A X R R
X b b M M A     A X R R
L L     B B B B a a    
L L     B     B a a    

#21. Move B:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b M M A A A A X R R
X b b M M A     A X R R
L L       B B B B a a  
L L       B     B a a  

#22. Move M:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b     A A A A X R R
X b b     A     A X R R
L L M M   B B B B a a  
L L M M   B     B a a  

#23. Move A:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b A A A A     X R R
X b b A     A     X R R
L L M M   B B B B a a  
L L M M   B     B a a  

#24. Move a:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b A A A A     X R R
X b b A     A     X R R
L L M M B B B B a a    
L L M M B     B a a    

#25. Move R:
X Y Y X X X X Z Z X    
X Y X X X X X X Z X    
X b b A A A A     X    
X b b A     A     X    
L L M M B B B B a a R R
L L M M B     B a a R R

#26. Move X:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X b b A A A A     X  
  X b b A     A     X  
L L M M B B B B a a R R
L L M M B     B a a R R

#27. Move a:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X b b A A A A a a X  
  X b b A     A a a X  
L L M M B B B B     R R
L L M M B     B     R R

#28. Move M:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X b b A A A A a a X  
  X b b A     A a a X  
L L     M M B B B B R R
L L     M M B     B R R

#29. Move b:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X     A A A A a a X  
  X     A     A a a X  
L L b b M M B B B B R R
L L b b M M B     B R R

#30. Move A:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
    X   A A A A   a a X
    X   A     A   a a X
L L b b M M B B B B R R
L L b b M M B     B R R

#31. Move L:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
    X   A A A A   a a X
    X   A     A   a a X
    b b M M B B B B R R
    b b M M B     B R R

#32. Move b:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
b b X   A A A A   a a X
b b X   A     A   a a X
        M M B B B B R R
        M M B     B R R

#33. Move B:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
b b X   A A A A   a a X
b b X   A     A   a a X
  M M B B B B       R R
  M M B     B       R R

#34. Move a:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
b b X   A A A A       X
b b X   A     A       X
  M M B B B B a a   R R
  M M B     B a a   R R

#35. Move A:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
b b X         A A A A X
b b X         A     A X
  M M B B B B a a   R R
  M M B     B a a   R R

#36. Move B:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
b b X B B B B A A A A X
b b X B     B A     A X
  M M         a a   R R
  M M         a a   R R

#37. Move M:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
b b X B B B B A A A A X
b b X B     B A     A X
          M M a a   R R
          M M a a   R R

#38. Move b:
L L X Y Y X X X X Z Z X
L L X Y X X X X X X Z X
    X B B B B A A A A X
    X B     B A     A X
      b b M M a a   R R
      b b M M a a   R R

#39. Move L:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
    X B B B B A A A A X
    X B     B A     A X
  L L b b M M a a   R R
  L L b b M M a a   R R

#40. Move R:
    X Y Y X X X X Z Z X
    X Y X X X X X X Z X
    X B B B B A A A A X
    X B     B A     A X
  L L b b M M a a R R  
  L L b b M M a a R R  

#41. Move X:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X B B B B A A A A X  
  X B     B A     A X  
  L L b b M M a a R R  
  L L b b M M a a R R  

#42. Move a:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X B B B B A A A A X  
  X B     B A a a A X  
  L L b b M M a a R R  
  L L b b M M     R R  

#43. Move b:
  X Y Y X X X X Z Z X  
  X Y X X X X X X Z X  
  X B B B B A A A A X  
  X B b b B A a a A X  
  L L b b M M a a R R  
  L L     M M     R R