function Main(input) {
	input = input.trim();
  var N = parseInt(input.split("\n")[0].split(" ")[0]);
  var M = parseInt(input.split("\n")[0].split(" ")[1]);
  var list = new Array(N).fill(1);//それぞれの箱の中にあるボールの個数
  var redVisited = new Set([0]);//赤が入った場所。赤が入ったことある場所の個数が0になるとbefore値がなくなる
  var lastRed = 0;//全ての操作で赤が可能な限り選ばれた場合の最後の場所
  for(var i = 1; i <= M; i++){
    var before = parseInt(input.split("\n")[i].split(" ")[0]) - 1;
    var after = parseInt(input.split("\n")[i].split(" ")[1]) - 1;
    list[before]--;
    list[after]++;
    if(redVisited.has(before)){
      	redVisited.add(after);
    }
    if(list[before] == 0){
       redVisited.delete(before);
    }
  }
  //console.log(list);
  console.log(redVisited.size);
  //console.log(lastRed);
}

Main(require("fs").readFileSync("/dev/stdin", "utf8"));
