BUGLIFE  A Bug’s Life
Professor Hopper is researching the sexual behavior of a rare species of bugs. He assumes that
they feature two different genders and that they only interact with bugs of the opposite gender. In
his experiment, individual bugs and their interactions were easy to identify, because numbers were
printed on their backs.
Given a list of bug interactions, decide whether the experiment supports his assumption of two
genders with no homosexual bugs or if it contains some bug interactions that falsify it.
Input
The first line of the input contains the number of scenarios. Each scenario starts with one line giving the number of bugs (at least one, and up to 2000) and the number of interactions (up to 1000000) separated by a single space. In the following lines, each interaction is given in the form of two distinct bug numbers separated by a single space. Bugs are numbered consecutively starting from one.
Output
The output for every scenario is a line containing “Scenario #i:”, where i is the number of the scenario starting at 1, followed by one line saying either “No suspicious bugs found!” if the experiment is consistent with his assumption about the bugs’ sexual behavior, or “Suspicious bugs found!” if Professor Hopper’s assumption is definitely wrong.
Example
Input: 2 3 3 1 2 2 3 1 3 4 2 1 2 3 4 Output: Scenario #1: Suspicious bugs found! Scenario #2: No suspicious bugs found!
hide comments
flower:
20230912 06:06:40
I remembered a property of the BFS tree of a bipartite graph. Good problem concept, bad test cases and output format. 

harsha_76:
20230124 11:21:03
Can't we just check for odd cycles 

latecomer04:
20221012 14:36:34
thanks @gp409


the_silencer:
20220806 19:40:43
This problem is so much recommended for those who want to learn about bipartite graphs.. 

ayush_7901:
20220728 14:49:57
cool problem


chawlajay111:
20211231 05:29:17
Do check for all components (4 WA because of this) 

amansingh_20:
20211206 19:03:53
AC in many go :) 

abdo_farah:
20211010 19:35:18
very weak test cases


wangbx:
20210830 07:10:16
It seems everybody speaks of bipartite and dfs/bfs,but this problem can also be solved with unionfind sets Last edit: 20210830 07:11:41 

citizendot:
20210816 14:03:55
Can be done with DFS. Bipartite is not necessary. 
Added by:  Daniel Gómez Didier 
Date:  20081117 
Time limit:  1s5s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ERL JSRHINO NODEJS PERL6 VB.NET 
Resource:  2007 PUJ  Circuito de Maratones ACIS / REDIS 