shunfurh 于 2017.09.10 10:01 提问

The Erythea Campaign

O' mighty warrior,

Thy mission is to slay the foul king of Erythea.
Thou shall find him in his realm in the south.

God bless you,
After reading the order, you know you have a long, dangerous way down to the south, to find the king of Erythea in his realm and kill him. The Erythea realm is a rectangular region, with a number of horrible strongholds in it. Impenetrable walls enclose the region, so the only way for you to enter the realm is to fly by your Pegasus (flying horse) and land in some point in the region. The hiding place of the king is known so you just need to find your way to that location. As the area is extensive and covered by different terrain types, you have to travel on the grid-like roads in the region. The problem is, there are many guards on the towers of strongholds who can see you, and once seen, you have no chance to see your family again! The closer you travel to the strongholds, the greater the chances to be seen by the guards. The problem is to find the safest way from the point your Pegasus lands to the point where the king is.

Input

The input file consists of several test cases. The first line of the file contains a single number M, which is the number of test cases in the file (1 <= M <= 10). The rest of the file consists of the data of the test cases. Each test case data begins with a line containing the number of rows and the number of columns in the grid, which are in the range 1 to 80. The second line of a test case contains two pairs of integers, which are y and x coordinates of the source point (where the Pegasus landed) and the y and x coordinates of the destination point (where you may find the king). The horizontal and vertical lines in the grid are indexed from left to right and top to bottom from 0, so the coordinates can be expressed using these indices.

Following the first two lines, there are lines that describe the map of the region. Each line consists of a string of 0's and 1's, describing squares of the corresponding row. A 1 in the string tells you that the corresponding square in the grid belongs to a stronghold. The width of the region is the length of all strings, and its height in the number of strings.

Output

The output for each test case is the total risk of the minimum risk path from the landing point to the destination. Recall that the total risk of a path is sum of the risk levels of the points in the path (including source and destination). If no path exists between source and destination, the output should be 'no solution'. The output for each test case must be written on a separate line.

Sample Input

2
8 6
1 5 7 1
000000
011000
001000
000110
000110
000010
111000
000000
5 5
4 0 1 5
10000
10000
11111
00011
00001

Sample Output

149
101

1个回答

devmiao      2017.09.27 21:52

ZOJ1430 POJ1697 The Erythea Campaign
/******************************************************************************* # Author : Neo Fung # Email : neosfung@gmail.com # Last modified: 2011-11-06 21:50 # Filename: ZOJ1430 POJ1697 The
ZOJ 1430 The Erythea Campaign(最短路)

ZOJ 1430 / POJ 2679 The Erythea Campaign (bfs+dijkstra)
<br />繁，但是不难。<br /> <br />首先，建图，题中给出的是m*n的矩阵，里面包含了所有stronghold的分布，但是你需要把他转换成一个图。但是路径不能穿过堡垒，多以说两个堡垒之间的两个点不能相互到达。还有就是每个点应该保存它可以到达的点的信息，当使用dijkstra求最短路径的时候，这些点可以当邻接表使用，很方便的。<br /> <br />接下来是每个的危险值，求法是m+n-d，不会出现负值。d的意思是它到达离他最近的堡垒的距离。对于每个堡垒上的点做bfs求出所有点到他的最短距离，如
zoj 1430 || poj 1697 The Erythea Campaign
<br />最短路分类里的，zoj只有50个人过，暴汗，不过应该大多数是被冗长的题目给吓住了吧。<br /> <br />给你地图，图中的1代表这里有根据地，你越靠近根据地，越容易被敌人发现，危险等级越高。不能从根据地中间穿过。<br /> <br />给你起点，终点，求最少的危险等级和使之可以到达，如果没有 输出，no solution。<br /> <br />危险等级是这么定义的，你在某个点，这个点离它最近的根据地的距离为d，那么，这个点的危险等级就是，矩阵的长+宽-d。<br /> <br />我第
Salesforce Marketing功能简介(VI)

Siesta行动：一起新发现的定向攻击

Android广告量监控的技术实现（campaign measurement）

Agri-Net (POJ 1258)
Description Farmer John has been elected mayor of his town! One of his campaign promises was to bring internet connectivity to all farms in the area. He needs your help, of course.  Farmer John or
POJ_1258_Farmer John has been【基础最小生成树】
Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Status Description Farmer John has been elected mayor of his town! One of his campaign promises was to bring in
campaign brief
unica campaign brief