1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
4 #define INF 0x3f3f3f3f
5 int map[1000][1000],visited[1000];
6 int n,m;
7 int flag;
8 void DFS(int t)
9 {
10 int i;
11 visited[t]=1;
12 for(i=n; i>=1; i--)
13 {
14 if(visited[i]==0&&map[t][i]==1)
15 {
16 DFS(i);
17 }
18 }
19 }
20 int main()
21 {
22 while(~scanf("%d %d",&n,&m))
23 {
24 int i;
25 memset(map,0,sizeof(map));
26 memset(visited,0,sizeof(visited));
27 for(i=1; i<=m; i++)
28 {
29 int a,b;
30 scanf("%d %d",&a,&b);
31 map[a][b]=1;
32 }
33 DFS(n);
34 if(visited[1]==1)
35 printf("YES\n");
36 else
37 printf("NO\n");
38 }
39 return 0;
40 }