问题标签 [river-crossing-puzzle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1724 浏览

prolog - 无限人的序言桥拼图

我正在尝试解决这样的流行问题。

一家四口试图在夜间过桥。一个人过桥需要一个手电筒,而且只有两个人可以同时过桥,以两个人中较慢的速度移动。爸爸1分钟过桥,妈妈2分钟,孩子5分钟,奶奶10分钟。他们过桥最快的方法是什么?

除了我必须找到一个家庭可以过桥的所有可能方式,以及每种方式所需的时间。不过,这个家庭可以有任何数量的人。

我有这段代码,但我不知道为什么不起作用。

我试过这个:

有人可以告诉我为什么这不起作用吗?

0 投票
1 回答
1387 浏览

prolog - 错误:pro-log中的单变量[x]。如何解决?

它是传教士-食人族程序,在 legal(3,x).legal(0,x) 行发现错误。

任何人都可以说解决它吗?如果你有其他传教士计划 - 食人族然后给我。

0 投票
1 回答
1339 浏览

f# - 使用 C# 或 F# 开始处理 Wolf、Cabbage、Goat 等基本运输问题

好的。这可能是一个非常基本的问题,请不要激怒我,但我一直在谷歌搜索,我想学习如何使用 F# 编写运输问题的解决方案,如狼、卷心菜和山羊或旅行推销员

到目前为止,我的研究已将我带到网络上的这些资源

http://mat.gsia.cmu.edu/orclass/integer/integer.html

http://www.zib.de/Publications/Reports/SC-95-27.pdf

狐山羊白菜运输

http://www.qauprogrammers.com/Article/File-192324030/PROLOG-Programming-with-NET

但是尽管通读了这些,我仍然无法“思考”如何用 F# 类型的语言解决这样的问题

0 投票
1 回答
1085 浏览

f# - F#狼山羊白菜

所以首先我很抱歉问这个问题。但是“逃离 Zurg”文章对我帮助很大,我可以编写自己的解决方案来解决 Wolf Goat Cabbage Problem。我在下面放置我的代码。我要你告诉我

  1. 如果我的代码是按照 F# 和函数式编程的真正精神编写的
  2. 这是解决问题的最佳和良好的解决方案

    /li>
0 投票
2 回答
4027 浏览

c# - 深度优先搜索确实在传教士和食人族问题中找到了解决方案

我正在使用 C# 做关于传教士和食人族的项目。我使用了两种搜索算法,即广度优先搜索和深度优先搜索。使用广度优先搜索,程序从根开始查找第 12 层的结果。但是使用深度优先搜索,它找不到解决方案,这会挂起我的电脑。我认为它在图中进入了一个循环。所以我的问题是,我不能使用深度优先搜索来解决传教士和食人族问题吗?

广度优先搜索的代码是

深度优先搜索的代码是

0 投票
2 回答
5444 浏览

prolog - Prolog - 狼山羊白菜

我正在开发一款名为“狼山羊白菜”的益智游戏。编程语言是 Prolog。

为了让它工作,我打电话给 length(X,7),wgc([w,w,w,w],X).它,它显示了结果。问题是它多次显示第一个结果,然后显示第二个结果:

如何只显示一次两个结果?我试图添加!wgc的符号:

...但它只显示第一个结果一次。任何想法如何解决它?

0 投票
1 回答
815 浏览

c - 有力量的食人者和传教士

我需要一些帮助来完成教授给我们的数学任务。任何建议都会有所帮助。问题是:

有 N 个食人者和 M 个传教士。所有传教士都有一个力量属性,可以是 1 或任何正整数。力量表明他可以击退多少食人族。

基本上:河的两边,有一个2槽的船,你必须把所有的家伙转移到另一边,不能让食人族吃掉传教士。

您将如何为此编写程序?什么是转移分组算法?

感谢期待,

标记。

0 投票
0 回答
1006 浏览

prolog - Prolog Fox, Goose & Grain 谜语,不显示输出

我正在尝试解决狐狸、鹅和谷物之谜(农民只能将自己和三个人之一运送过河),并遵循此处给出的代码:http: //hilltop.bradley.edu/ ~chris/prolog.html(大约 4/5 进入文档)

基本上,代码告诉 Prolog 哪些动作是有效的,然后 Prolog 会从中计算出答案。

但是,我无法让 Prolog 显示答案。难道我做错了什么?我正在使用 SWI-Prolog,作为 IDE,我正在使用 SWI-Prolog-Editor。

编辑:为了清楚起见,它可以编译,只是没有显示“答案”变量的“值”。

0 投票
2 回答
2335 浏览

prolog - Wolf Goat Cabbage 解算器中的堆栈溢出

我尝试在 Prolog 中编写一个程序来解决众所周知的 Wolf Goat Cabbage 谜题。假设一个农民想带着他的狼、山羊和卷心菜过河。船只能同时容纳两个,他不能让狼和山羊或山羊和白菜一起离开。

我知道 Stackoverflow 上有针对此问题的有效解决方案。但我想在我的代码中找到错误以用于学习目的。这是我的代码。它导致所谓的本地堆栈溢出,我猜逻辑中存在错误。由于我对每个块都进行了评论,因此应该很容易理解。

这段代码有什么问题?我只是尝试更深入地了解 Prolog。

0 投票
1 回答
2265 浏览

prolog - Prolog 中的农夫山羊狼和卷心菜通过广度优先搜索

我正在尝试使用广度优先技术解决 Prolog 中的农夫、山羊、狼、卷心菜之谜,但遇到了一些问题。当我尝试为树的第二级收集所有有效组合时,它失败了。这是相关代码,

扩展谓词是我看到问题的地方。当我在第一级运行它时,它工作正常,

当我运行第二级时,它失败了,

它应该返回如下内容,

提前感谢您的所有帮助,非常感谢。

问候,

达里安