Skip to content

Instantly share code, notes, and snippets.

@k-payl
Created October 8, 2013 06:05
Show Gist options
  • Save k-payl/6880194 to your computer and use it in GitHub Desktop.
Save k-payl/6880194 to your computer and use it in GitHub Desktop.
try([],X,Y,0) :- X = [];Y = [].
try([H|T],[],[],C):-write(T),write([]),write([H]),try(T, [], [H], C1), C is C1+1.
try([H1|T1],[],[H3|T3],C):- H1 < H3, try(T1, [], [H1|[H3|T3]], C1), C is C1+1.
try([H1|T1],[],[H3|T3],C):- H3 < H1, try([H1|T1], H3, T3, C1), C is C1+1.
try([H1|T1], [H2|T2], L3, C) :- H1 < H2, L=[H1|[H2|T2]], try(T1, L, L3, C1), C is C1+1.%1->2
try([H1|T1], L2, [H3|T3], C) :- H1 < H3, L=[H1|[H3|T3]], try(T1, L2, L, C1), C is C1+1.%1->3
try([H1|T1], [H2|T2], L3, C) :- H2 < H1, L=[H2|[H1|T1]], try(L, T2, L3, C1), C is C1+1.%2->1
try(L1, [H2|T2], [H3|T3], C) :- H2 < H3, L=[H2|[H3|T3]], try(L1, T2, L, C1), C is C1+1.%2->3
try([H1|T1], L2, [H3|T3], C) :- H3 < H1, L=[H3|[H1|T1]], try(L, L2, T3, C1), C is C1+1.%3->1
try(L1, [H2|T2], [H3|T3], C) :- H3 < H2, L=[H3|[H2|T2]], try(L1, L, T3, C1), C is C1+1.%3->2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment