{
scanf("%d",&ts);
if(ts==0)break;
// memset(g,0,sizeof(g));
for(i=1;i<=ts;i++)
for(j=1;j<=ts;j++)
g[i][j]=VALUE;
for(i=1;i<=ts;i++)
{
int n;
scanf("%d",&n);
g[i][i]=0;
while(n--)
{
int no,time;//时间和编号
scanf("%d%d",&no,&time);
g[i][no]=time;//建图
}
}
Floyd(ts);
maxtime=VALUE;
for(i=1;i<=ts;i++)
{
maxvalue=0;
{
if(g[i][j]>maxvalue)
{//求出最长的边
maxvalue=g[i][j];
}
}
if(maxvalue
maxtime=maxvalue;
t=i;
}
}
if(maxtime==VALUE)
{
printf("disjoint\n");
}
else
{
printf("%d %d\n",t,maxtime);
}
}
return 0;
}
作者:CSDN515