Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- sum([],0).
- sum([H|T],S) :- sum(T,S2), S is S2+H.
- lenggth([], 0).
- lenggth([_|T], L) :- lenggth(T, L_T), L is L_T+1.
- x_cp(List2, X) :- sum(List2, S), lenggth(List2, L), X is S div L.
- getmin([X], X).
- getmin([H|Tail], H):- getmin(Tail, TailMin), H < TailMin.
- getmin([H|Tail], TailMin):- getmin(Tail, TailMin), TailMin =< H.
- first_N([], _, []).
- first_N(_, 0, []).
- first_N([H|T], N, [H|T1]) :- N2 is N-1, first_N(T, N2, T1).
- level1([],_,0).
- level1([H|T],X,K) :- H > X, !, level1(T,X,H1_T), K is H1_T + 1.
- level1([H|T],X,H1) :- H =< X, level1(T,X,H1).
- level2([],_,0).
- level2([H|T],X,K) :- H < X, !, level2(T,X,H1_T), K is H1_T + 1.
- level2([H|T],X,H1) :- H >= X, level2(T,X,H1).
- delta(List1, List2, X, Y) :- level1(List1,X,P1),
- level1(List2,X,P2), level2(List1,X,P3),
- level2(List2,X,P4),
- Y is abs(P1 - P2) + abs(P3 - P4).
- delta2([], [], [], _).
- delta2(List1, List2, [], X) :- lenggth(List1, L1),
- lenggth(List2, L2), L1<L2.
- delta2([H1|T1], List2, [H3|T3], X) :- lenggth(List2, L2),
- first_N([H1|T1],L2,NewList1), delta(NewList1, List2, X, H3),
- delta2(T1, List2, T3, X).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement