#include<bits/stdc++.h>
using namespace std;
struct node{
int father;
int sons[305];
int point = 0;
};
int n,p;
node tree[305];
int sum[305];
int cnt;
queue<int> people;
void add(int x){
if(x == 1){
sum[x]++;
return;
}else{
sum[x]++;
add(tree[x].father);
}
}
int main(){
cin>>n>>p;
for(int i = 0;i < p;i++){
int a,b;
cin>>a>>b;
tree[b].father = a;
tree[a].sons[tree[a].point] = b;
tree[a].point++;
add(b);
}
people.push(1);
while(!people.empty()){
int mx = 0;
int x = people.front();
for(int i = 0;i < tree[x].point;i++){
if(tree[x].sons[mx] < tree[x].sons[i]) mx = i;
}
tree[tree[x].sons[mx]].father = 0;
tree[x].sons[mx] = 0;
for(int i = 0;i < tree[x].point;i++){
if(tree[x].sons[i] != 0){
people.push(i);
cnt++;
}
}
people.pop();
}
cout<<cnt + 1;
return 0;
}
题目样例会输出2