#include <cstdio>
int n,m;
int link[1005][1005];
int main()
{
for(int i=0;i<1000;i++)
for(int j=0;j<1000;j++)
link[i][j]=100000;
scanf("%d %d",&n,&m);
for(int i=0,a,b;i<m;i++){
scanf("%d %d",&a,&b);
link[--a][--b]=1;
}
for(int k=0;k<n;k++){
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(link[i][j]>link[i][k]+link[k][j])
link[i][j]=link[i][k]+link[k][j];
}
}
}
printf("%d",link[0][n-1]==0?link[0][n-1]:-1);
return 0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
5032 KB |
Output is correct |
2 |
Incorrect |
4 ms |
5032 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Halted |
0 ms |
0 KB |
- |