寻求帮助----寻找宝藏
由 ystww 于 周四, 2005-06-09 23:33 提交。
寻找宝藏
问题描述
据说在意大利的米兰市的地下,埋藏着一堆的宝藏。一天,一个名叫Shevchenko 的人来到这地下宝库,准备把所有的宝藏都搬回家。当他来到这里时,发现这里是一个迷宫,宝藏埋藏在各个角落,在另一端有个出口,当他每捡到一个宝藏将恢复一定的体力值。
由于Sheva(Shevchenko 的昵称)的体力有限,他必须合理的安排体力,才能既捡完所
有的宝藏又能离开这个宝库,现在请你编一程序,帮Sheva 解决这个问题。在迷宫中每走一格,Sheva 的体力值都会减少一定的数量,如果体力值小于等于0,他将不能再前行。
输入
第一行输入Sheva 刚开始的体力值和每走一格消耗的体力值(均为整数)。
第二行输入宝藏的个数N(N<=10)。
第三行到第N+2 行每行有3 个数,前两个数为宝藏的坐标X、Y,第3 个数为捡到这宝
藏将获得的体力值。
下一行输入迷宫的行数A 和列数B。(A、B<=50)
以下A 行将输入迷宫的地形。0 表示不能走,1 表示可以走(宝藏所在的位置也为1)。
最后一行输入出口的坐标(起点坐标为(1,1))。
输出
如果Sheva 能走出迷宫,请输出他所剩的体力值以及所走路径。否则,将输出“no,he
cannot”(注意大小写)。
样例输入
100 1
4
1 4 2
2 4 2
4 4 2
5 3 2
5 5
1 1 0 1 0
0 1 1 1 0
0 1 0 0 1
0 1 1 1 0
0 1 1 1 1
5 5
样例输出
92 11 12 ……….55(中间路径在这里省略)
