#include #include #include #define inf 99999999 using namespace std; int map[305][305]; int mark[305]; void floyd(int k,int n) { int i,j; for(i=0;imap[i][k]+map[k][j]) map[i][j]=map[i][k]+map[k][j]; } } } int main() { int n,m,q; int cas=1; while(scanf("%d%d%d",&n,&m,&q)) { if(n==0&&m==0&&q==0) break; int i,j; memset(mark,0,sizeof(mark)); for(i=0;i<=n;i++) for(j=0;j<=n;j++) map[i][j]=(i==j?0:inf); for(i=0;i=inf) printf("No such path\n"); else printf("%d\n",map[u][v]); } } } return 0; }