PT07Y  Is it a tree
You are given an unweighted, undirected graph. Write a program to check if it's a tree topology.
Input
The first line of the input file contains two integers N and M  number of nodes and number of edges in the graph (0 < N <= 10000, 0 <= M <= 20000). Next M lines contain M edges of that graph  Each line contains a pair (u, v) means there is an edge between node u and node v (1 <= u,v <= N).
Output
Print YES if the given graph is a tree, otherwise print NO.
Example
Input: 3 2 1 2 2 3 Output: YES
hide comments
sarkybastard:
20200924 23:29:07
AND WHAT IF I DONT? YOUR PROBLEMS ARE NOT MY PROBLEMS. 

kapilsukrit2:
20200922 05:04:52
GUYS LISTEN! FOR TLE > USE ADJACENCY LIST NOT MATRIX. SIMPLE DFS WORKS AS A CHARM!! 

samiya_ahmed5:
20200918 06:38:23
simple observation may help : 1 connected component and no cycle..:) 

singhar:
20200905 11:31:00
i submitted two solutions 1st for directed and second for undirected.Both got accepted.


jrseinc:
20200819 10:37:15
easy disjoint set union problem 

harry_shit:
20200818 13:53:43
simple dfs will do the the work 

saurabh_shinde:
20200814 16:34:59
AC in one go!! Thanks to comment on connected component 

adikrmishra_1:
20200622 19:19:21
simple one using


picchi_67:
20200613 09:10:43
easy DSU problem...but you have to know what is tree...


afaiyaz:
20200611 12:44:01
If anyone getting TLE using recursive dfs just pass the vector to dfs function as a const reference.(in c++ ofcourse) Last edit: 20200611 12:44:44 
Added by:  ThanhVy Hua 
Date:  20070328 
Time limit:  0.5s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ERL JSRHINO 
Resource:  Coauthor Amber 