我寫了下面的程序,它計算輸入數組最長的非遞減子序列。 從列表中找到最長列表的子程序取自計算器(How do I find the longest list in a list of lists)本身。 :- dynamic lns/2.
:- retractall(lns(_, _)).
lns([], []).
lns([X|_], [X]).
lns([X|Xs], [X, Y|Ls
我目前正在爲Prolog中的樓層規劃問題編寫求解程序,並且在標註部分存在一些問題。 目前的問題是我的約束被張貼,但是當我啓動標籤時,它需要永遠找到解決方案。我想引入一些啓發式。 我的問題是,我該如何手動標記我的變量?恐怕定義這樣的clpfd變量之後: X in Xinf..Xsup ,並將其約束,如果我這樣做: fd_sup(X, Xmax),
X = Xmax,
...
在我的自