Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- odleglosc([],_,0,_) :- !.
- odleglosc([H|_],H,Y,Y) :- !.
- odleglosc([_|T],X,Y,Z) :- Z1 is Z + 1, odleglosc(T,X,Y,Z1).
- insert(L,[],[L]).
- insert([X,X1],[[H,Z]|T],[[X,X1],[H,Z]|T]) :- H >= X, !.
- insert([X,X1],[[H,Z]|T],[[H,Z]|W]) :- H < X, insert([X,X1],T,W).
- inssort([],[]).
- inssort([H|T],W) :- inssort(T,W1), insert(H,W1,W), !.
- clean([],[]).
- clean([[_,X1]|T],[X1|T2]) :- clean(T,T2).
- sortpary(L,W) :- sortpary1(L,W1), inssort(W1,W2), clean(W2,W).
- sortpary1([],[]).
- sortpary1([H|T],U) :- member(H,T), odleglosc(T,H,X,0), append([X],[H],U1), sortpary1(T,U3), append([U1],U3,U), !.
- sortpary1([_|T],U) :- sortpary1(T,U), !.
Add Comment
Please, Sign In to add comment