#include<iostream>
using namespace std;
int mmap[505][505][2];int n,m; int temp=0;int temp2=0;
int go(int x)
{
for(int i=1;i<=n;i++)
{
if(mmap[x][i][0]==1)
{ temp++;
go(i);
}
}
return temp;
}
int go2(int x)
{
for(int i=1;i<=n;i++)
{
if(mmap[x][i][1]==1)
{ temp2++;
go2(i);
}
}
return temp2;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int x,y;
cin>>x>>y;
mmap[x][y][0]=1;
mmap[y][x][1]=1;
}int ans=0;
for(int j=1;j<=n;j++)
{ temp=0; temp2=0;go(j);go2(j);
if(temp>(n-1)/2)
ans++;
if(temp2>(n-1)/2)ans++;
}
cout<<ans;
return 0;
}