蒟蒻已A,但有一个发现:这是70分时的代码:
#include<queue>
#include<cstdio>
#include<cstring>
using namespace std;
int n,s,t,x,a[110][110],ans[110],k;
int main()
{
memset(a,0x3f3f3f3f,sizeof(a));
scanf("%d%d%d",&n,&s,&t);
for(int i=1;i<=n;i++)
{
scanf("%d",&k);
if(k==0)continue;
scanf("%d",&x);
a[i][x]=0;
for(int i=2;i<=k;i++)//这里重复调用了i,明显错误,那70pts怎么拿的?
{
scanf("%d",&x);
a[i][x]=1;
}
}
for(int k=1;k<=n;k++)for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)
if(a[i][k]+a[k][j]<a[i][j])a[i][j]=a[i][k]+a[k][j];
if(a[s][t]!=0x3f3f3f3f)printf("%d",a[s][t]);
else printf("-1");
return 0;
}