gpt4 book ai didi

prolog - 获取查询的第 n 个解决方案

转载 作者:行者123 更新时间:2023-12-04 21:40:15 25 4
gpt4 key购买 nike

我可以提取查询的第 n 个解决方案吗?我知道 findall ,但我认为(如果我错了,请纠正我)它创建了一个完整的解决方案列表,我更喜欢一种只消耗计算值所需内存的方法。

最佳答案

这是一种简单的方法,您可以让 SWI-Prolog 精确计算 N 个解(您可以自己提供数字 N)。

在这个例子中,N 是 17,我们感兴趣的第 17 个解的目标是 between(0, inf, I) :

?- findnsols(17, I, between(0, inf, I), L), last(L, X), !.
L = [0, 1, 2, 3, 4, 5, 6, 7, 8|...],
X = 16.

请注意使用切割来强制确定性。随切 findnsols/4可用于分页(即,为了计算接下来的 17 个解决方案)。

关于prolog - 获取查询的第 n 个解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28464594/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com