Shahir was already taped shut in the box when it occurred to him that he didn't know if it was possible to get from his house to his prom date's. That's no problem: he asks one of the friends that will deliver him, Dhruvit, to check.
There are
Shahir lives in house
Input Specification
The first line will contain four integers, separated by spaces:
: The number of houses in Shahir's neighbourhood. : The number of roads in Shahir's neighbourhood. : Shahir lives in house . : Shahir's date lives in house .
The next
Output Specification
On a single line, print GO SHAHIR!
if Shahir can make it to his date's house. Otherwise, print NO SHAHIR!
.
Sample Input 1
6 7 1 6
1 2
2 3
2 5
5 1
3 4
4 5
4 6
Sample Output 1
GO SHAHIR!
Explanation for Sample 1
Here is the graph of Shahir's neighbourhood:
Shahir's house is house
Sample Input 2
6 6 1 6
1 2
2 3
2 5
5 1
3 4
4 5
Sample Output 2
NO SHAHIR!
Explanation for Sample 2
This map of Shahir's neighbourhood is the same as the one in Sample 1, but the edge between houses
Comments
Im just Gonna put Duct tape on Shahir's Box.
This is a great problem for an introduction to graph theory
Note that even though the first sample case has
, the actual test data has 
.
I keep getting WA on #5. I'm probably in the wrong here, but I'm just checking as I'm the only Python 2 submission, and I have gotten the short end of the data precision stick before...
EDIT: Nevermind, corner cases are my life! Thanks all!
yes there is a problem, you have to check all of the corner cases.