1 #include <cstdio>
2 #include <iostream>
3 using namespace std;
4 int n,m,ans,s,a[210][210],visit[210],p[210];
5 int hungary(int x)
6 {
7 if (visit[x]==s) return 0;
8 visit[x]=s;
9 for (int i=1;i<=n;i++)
10 if (a[x][i]==1&&(p[i]==0||hungary(p[i])))
11 {
12 p[i]=x;
13 return 1;
14 }
15 return 0;
16 }
17 int main()
18 {
19 freopen("dance.in","r",stdin);
20 freopen("dance.out","w",stdout);
21 scanf("%d%d",&n,&m);
22 for (int i=1;i<=m;i++)
23 {
24 int x,y;
25 scanf("%d%d",&x,&y);
26 a[y][x]=1;
27 }
28 for (int k=1;k<=n;k++)
29 for (int i=1;i<=n;i++)
30 for (int j=1;j<=n;j++)
31 a[i][j]|=(a[i][k]&a[k][j]);
32 long long ans=n;
33 for (int i=1;i<=n;i++) s=i,ans-=hungary(i);
34 printf("%d",ans);
35 }