1 #include<iostream>
2 using namespace std;
3 #define N 10010
4 int ru[N]; //记录入度
5 int tmp[N][N];
6 int stack[N];
7 int sum,k,c,n,m;
8 bool tuopu()
9 {
10 while(c<n)
11 {
12 m=0;
13 for(int i=1;i<=n;++i)
14 if(ru[i]==0)
15 {
16 ++m;
17 ++c;
18 sum+=100;
19 stack[m]=i;
20 ru[i]=0xfffffff;
21 }
22 if(m==0)return false;
23 sum+=(k*m);
24 k++;
25 for(int i=1;i<=m;++i)
26 {
27 int d=stack[i];
28 for(int j=1;j<=tmp[d][0];++j)
29 ru[tmp[d][j]]--;
30 }
31 }
32 return true;
33 }
34 int main()
35 {
36 cin>>n>>m;
37 for(int x,y,i=1;i<=m;++i)
38 {
39 cin>>x>>y;
40 tmp[y][++tmp[y][0]]=x;
41 ru[x]++;
42 }
43 if(tuopu())cout<<sum;
44 else cout<<"-1";
45 return 0;
46 }