#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define MAX 1005
#define Infinity 100000
using namespace std;
int mat[MAX][MAX];
int koyta_crossing,koyta_street,i,j,k,queries,c1,c2,d,from,to,tc=0,tag=0;
void Floyd()
{
for(k=1; k<=koyta_crossing; k++)
{
for(i=1; i<=koyta_crossing; i++)
{
for(j=1; j<=koyta_crossing; j++)
{
if(mat[i][j]!=0 && mat[i][k]>0 && mat[k][j]>0)
{
mat[i][j]=min(mat[i][j],max(mat[i][k],mat[k][j]));
}
}
}
}
}
int main()
{
while(cin>>koyta_crossing>>koyta_street>>queries)
{
if(koyta_crossing==0 && koyta_street==0 && queries==0)
{
break;
}
for(i=1; i<=koyta_crossing; i++)
{
for(j=1; j<=koyta_crossing; j++)
{
if(i!=j && mat[i][j]==0)
{
mat[i][j]=Infinity;
}
}
}
for(i=1; i<=koyta_street; i++)
{
cin>>c1>>c2>>d;
mat[c1][c2]=d;
mat[c2][c1]=d;
}
Floyd();
if(tag)
{
printf("\n");
}
tag=1;
printf("Case #%d\n",++tc);
for(i=1; i<=queries; i++)
{
cin>>from>>to;
if(mat[from][to]==Infinity)
{
printf("no path\n");
}
else
{
printf("%d\n",mat[from][to]);
}
}
memset(mat,0,sizeof(mat));
}
return 0;
}
#include<cstring>
#include<iostream>
#include<algorithm>
#define MAX 1005
#define Infinity 100000
using namespace std;
int mat[MAX][MAX];
int koyta_crossing,koyta_street,i,j,k,queries,c1,c2,d,from,to,tc=0,tag=0;
void Floyd()
{
for(k=1; k<=koyta_crossing; k++)
{
for(i=1; i<=koyta_crossing; i++)
{
for(j=1; j<=koyta_crossing; j++)
{
if(mat[i][j]!=0 && mat[i][k]>0 && mat[k][j]>0)
{
mat[i][j]=min(mat[i][j],max(mat[i][k],mat[k][j]));
}
}
}
}
}
int main()
{
while(cin>>koyta_crossing>>koyta_street>>queries)
{
if(koyta_crossing==0 && koyta_street==0 && queries==0)
{
break;
}
for(i=1; i<=koyta_crossing; i++)
{
for(j=1; j<=koyta_crossing; j++)
{
if(i!=j && mat[i][j]==0)
{
mat[i][j]=Infinity;
}
}
}
for(i=1; i<=koyta_street; i++)
{
cin>>c1>>c2>>d;
mat[c1][c2]=d;
mat[c2][c1]=d;
}
Floyd();
if(tag)
{
printf("\n");
}
tag=1;
printf("Case #%d\n",++tc);
for(i=1; i<=queries; i++)
{
cin>>from>>to;
if(mat[from][to]==Infinity)
{
printf("no path\n");
}
else
{
printf("%d\n",mat[from][to]);
}
}
memset(mat,0,sizeof(mat));
}
return 0;
}
0 comments: (+add yours?)
Post a Comment