最大列表受条件限制

时间:2013-12-16 15:18:12

标签: prolog

我有一个列表如下[[_,A,D,_,_],...]。我想找到A的{​​{1}}最大值等于某个值。我编写了以下代码,但它不起作用。有人可以帮忙吗?

D

1 个答案:

答案 0 :(得分:0)

使用库聚合,很容易

maxL(L, C, Max) :- aggregate_all(max(A), member([_,A,C,_,_], L), Max).

试验:

1 ?- maxL([[_,1,y,_,_],[_,2,y,_,_],[_,3,n,_,_]], y, M).
M = 2.