PT07Y - Is it a tree

You are given an unweighted, undirected graph. Write a program to check if it's a tree topology.


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).


Print YES if the given graph is a tree, otherwise print NO.


3 2
1 2
2 3


hide comments
maruf_robin: 2018-01-20 18:53:07

Keep in mind a tree must have n-1 edges & all the node will be connected.

anurag_05: 2018-01-15 14:30:56

AC in one go... just check for cycles and whether each and every vertex is visited during DFS

aishu7: 2017-12-27 20:43:22

Adjacency list and dfs would work

nixys: 2017-12-16 15:23:56

AC in one Go!!!

sayasaiteja: 2017-12-12 15:58:49

AC in one GO!!

abhar10: 2017-11-14 08:15:54

My 50th!!
AC in one Go!!
Solved using Union-Find

punee901: 2017-10-26 14:36:12

java people use input method other than scanner class it gives me one tle.
just use Adjacency List and dfs.

g_o_d: 2017-10-22 10:24:57

It can also also be solved as follow:
Just check whether both edges you are taking as input is already present or not.

vicky_1998: 2017-10-19 13:02:25

Just Disjoint Set works quite well

hemant1612: 2017-10-03 17:53:33

cool problem

Added by:Thanh-Vy Hua
Time limit:0.5s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO
Resource:Co-author Amber