将具有奇数长度的列表拆分为两个在Prolog中长度相等的列表

时间:2017-04-17 15:35:59

标签: list split prolog

我正在Prolog中编写一个谓词,将列表分成两个相等的长度列表。例如:

spliting([a, b, c, d, e], L1, L2)

产生

L1 = [a, b, c], L2 = [d, e].

我的代码:

parimpar(L, A, B) :-
    split(L, L, A, B).

split(B, [], [], B).
split([H|T], [_, _|T1], [H | T2], B) :-
    split(T, T1, T2, B).

但它的工作只是拆分列表的长度是均匀的。 我该如何解决?

0 个答案:

没有答案