编写程序以绘制图形(从标准输入或文件中选择),并在图形中找到最短路径。
图形使用以下格式指定:
A---S F--T
| / \ |
| / 5 0
|/ \|
D----3--E
A-Z: nodes in the graph
-|/\: edges in the graph
0-9: weights on the edges
<space>: all the holes
所有边缘都是无方向的,并沿8个基本方向之一(即无弯曲)放置。边缘可以选择包含0到9的权重。该权重不会在将边缘连接到节点的最后一个符号上(即,边缘必须至少具有3个符号才能包含权重)。未加权边缘的默认权重为1。
您的代码应计算节点之间的最短路径S
,T
并打印长度和路径,如下所示:
5:SDEFT
最短的正确程序获胜。
是的,您必须按照我的指定来分析图形。实际上,这是最主要的问题。最短路径部分只是确保您的解析正确。
—
基思·兰德尔
输入格式确实太复杂了,恕我直言,实际上并没有增加太多的问题。
—
JPvdMerwe 2011年
只是以为这里的人们想尝试一些更具挑战性的事情。
—
基思·兰德尔
@SimpleCoder:我假设是等宽的
—
JPvdMerwe 2011年
AS0,SD0,SE5,DE3,FE0,FT0
如果每个条目的长度为3个字节,则可以省略逗号。)