您的目标是编写一个程序,使用0
,1
和创建一个随机的10x10映射,并2
假定从左上到右下的最短路径:
0代表草地:任何人都可以在上面行走;
1代表一堵墙:您不能穿过它;
2代表门户:输入门户时,您可以移至地图中的任何其他门户。
眼镜:
- 左上角元素和右下角元素必须为0;
- 创建随机映射时,每个字段应有60%的机会成为0; 30%的机会成为1; 10%的机会成为2;
- 您可以在任何相邻字段(甚至对角线字段)中移动;
- 您的程序应输出地图和最短路径的步数;
- 如果没有通向右下字段的有效路径,则您的程序应仅输出地图;
- 您可以使用任何您想使用的资源;
- 最短的代码获胜。
计算步骤:
步骤是实际运动;每次更改字段时,都会增加计数器。
输出:
0000100200
0100100010
1000000111
0002001000
1111100020
0001111111
0001001000
0020001111
1100110000
0000020100
9
我们不能只为最短的路径制作程序吗?生成是另一个问题。
—
麦克尔迈耶
您没有指定每次随机地图都必须不同:)
—
marinus 2014年
@marinus LoooL!好吧,在规范中我写了生成机会,所以我猜想写一个包含60
—
0、30
@MikaëlMayer我想您有一个要点,但我认为这样会更具挑战性。我错了吗?
—
Vereos 2014年
由于这是一个代码问题,因此获胜标准是最短的代码。如果该代码真的很慢并且需要几个世纪才能运行,会发生什么?
—
Victor Stafusa 2014年