#include <iostream>
#include <cstdio>
using namespace std;
const int maxn = 1005;
double dist[maxn][maxn];
int n;
void Flody()
{
for(int k = 1; k <= n; k++)
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
if( dist[i][j] < dist[i][k]*dist[k][j])
dist[i][j] = dist[i][k]*dist[k][j];
}
int main()
{
while(scanf("%d", &n)!=EOF)
{
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
scanf("%lf", &dist[i][j]);
Flody();
int m;
scanf("%d", &m);
for(int i = 1; i <= m; i++)
{
int st, en;
scanf("%d%d", &st,&en);
if(dist[st][en]!=0) printf("%.3lf\n", dist[st][en]);
else printf("What a pity!\n");
}
}
}
hdu1596
最新推荐文章于 2020-07-21 22:50:11 发布