MAKEMAZE - VALIDATE THE MAZE
There are many algorithms to generate maze. (http://en.wikipedia.org/wiki/Maze_generation_algorithm). After generating the maze we’ve to validate whether it’s a valid maze or not. A valid maze has exactly one entry point and exactly one exit point (exactly 2 openings in the edges) and there must be at least one path from the entry point to exit point.
Given a maze, just find whether the maze is "valid" or "invalid".
Input
The first line consists of an integer t, the number of test cases. Then for each test case, the first line consists of two integers m and n, the number of rows and columns in the maze. Then contains the description of the matrix M of order mxn. M[i][j]=# represents a wall and M[i][j]='.' represents a space.
Output
For each test case find whether the maze is "valid" or "invalid".
Constraints
1<=t<=10000
1<=m<=20
1<=n<=20
Example
Input: 6 4 4 #### #... #.## #.## 5 5 #.### #..## ##..# #.#.# ###.# 1 1 . 5 1 # # . . # 2 2 #. .# 3 4 #..# #.## #.## Output: valid valid invalid valid invalid invalid
hide comments
Abhishek Mishra:
2013-12-12 23:21:48
very nyc question Last edit: 2012-06-20 18:33:56 |
|
Pandian:
2013-12-12 23:21:48
@Nnavneetsinha : You can't move from one '.' to another '.' with the possible moves up,down,left and right.
|
|
(Tjandra Satria Gunawan)(曾毅昆):
2013-12-12 23:21:48
Is the test case ok? I'm getting WA |
|
RAJDEEP GUPTA:
2013-12-12 23:21:48
what are the possible moves??
|
|
Nnavneetsinha:
2013-12-12 23:21:48
k thanks@pandian Last edit: 2012-06-01 04:52:34 |
Added by: | cegprakash |
Date: | 2012-05-11 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 GOSU |