Skip to content

Instantly share code, notes, and snippets.

@Haroperi
Last active December 22, 2015 03:59
Show Gist options
  • Save Haroperi/6414162 to your computer and use it in GitHub Desktop.
Save Haroperi/6414162 to your computer and use it in GitHub Desktop.
list rules for slide puzzle written in Prolog
% スライドパズルの移動のルール
move_one([0,B,C,D,E,F,G,H,I], [B,0,C,D,E,F,G,H,I]).
move_one([A,0,C,D,E,F,G,H,I], [0,A,C,D,E,F,G,H,I]).
move_one([0,B,C,D,E,F,G,H,I], [D,B,C,0,E,F,G,H,I]).
move_one([A,B,C,0,E,F,G,H,I], [0,B,C,A,E,F,G,H,I]).
move_one([A,0,C,D,E,F,G,H,I], [A,C,0,D,E,F,G,H,I]).
move_one([A,B,0,D,E,F,G,H,I], [A,0,B,D,E,F,G,H,I]).
move_one([A,0,C,D,E,F,G,H,I], [A,E,C,D,0,F,G,H,I]).
move_one([A,B,C,D,0,F,G,H,I], [A,0,C,D,B,F,G,H,I]).
move_one([A,B,0,D,E,F,G,H,I], [A,B,F,D,E,0,G,H,I]).
move_one([A,B,C,D,E,0,G,H,I], [A,B,0,D,E,C,G,H,I]).
move_one([A,B,C,0,E,F,G,H,I], [A,B,C,E,0,F,G,H,I]).
move_one([A,B,C,D,0,F,G,H,I], [A,B,C,0,D,F,G,H,I]).
move_one([A,B,C,0,E,F,G,H,I], [A,B,C,G,E,F,0,H,I]).
move_one([A,B,C,D,E,F,0,H,I], [A,B,C,0,E,F,D,H,I]).
move_one([A,B,C,D,0,F,G,H,I], [A,B,C,D,F,0,G,H,I]).
move_one([A,B,C,D,E,0,G,H,I], [A,B,C,D,0,E,G,H,I]).
move_one([A,B,C,D,0,F,G,H,I], [A,B,C,D,H,F,G,0,I]).
move_one([A,B,C,D,E,F,G,0,I], [A,B,C,D,0,F,G,E,I]).
move_one([A,B,C,D,E,0,G,H,I], [A,B,C,D,E,I,G,H,0]).
move_one([A,B,C,D,E,F,G,H,0], [A,B,C,D,E,0,G,H,F]).
move_one([A,B,C,D,E,F,0,H,I], [A,B,C,D,E,F,H,0,I]).
move_one([A,B,C,D,E,F,G,0,I], [A,B,C,D,E,F,0,G,I]).
move_one([A,B,C,D,E,F,G,0,I], [A,B,C,D,E,F,G,I,0]).
move_one([A,B,C,D,E,F,G,H,0], [A,B,C,D,E,F,G,0,H]).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment