Cairo Corridor
The Cairo pentagonal tiling is a decomposition of the plane using semiregular pentagons. Its name is given because several streets in Cairo are paved using variations of this design.
Consider a bounded tiling where each pentagon is either clear (white) or filled in (grey). A corridor is a maximal set of clear adjacent pentagons that connect the four borders of the tiling. Pentagons are considered adjacent if they share an edge, not just a corner. It is easy to verify that there can be at most one corridor in each tiling. A corridor is said to be minimal if it has no superfluous pentagon, that is, if any pentagon of the corridor was filled in, the set of remaining pentagons would not be a corridor.
The figure above depicts four example tilings. In the first three cases, there is a corridor which is highlighted in yellow. Besides, the corridors of figures (a) and (b) are minimal, but the one in figure (c) is not: for example, the tiles marked 'X' (among others) could be filled in and a corridor would still exist. In the rightmost tiling there is no corridor. The tilings shown in figures (a) and (c) correspond to sample input 1.
Write a program that reads textual descriptions of Cairo tilings, and for each one determines if a corridor exists and is minimal. In the latter case, the program should compute the size of the corridor, i.e., the number of clear pentagonal tiles of the corridor.
Input
The first line is a positive decimal integer t (1 ≤ t ≤ 10) of tilings to be processed. Each tiling description k has a first line with two positive decimal integers, n[k]
and m[k]
(1 ≤ n[1]
+ n[2]
+ ... + n[t]
≤ 250 - total number of lines, 1 ≤ m[1]
+ m[2]
+ ... + m[t]
≤ 250 - total number of tile pairs), separated by a space. The following n[k]
lines contain 2 * m[k]
binary digits representing pairs a[ij]
, b[ij]
of tiles (0 is clear and 1 is full) in alternating horizontal/vertical adjacency following a "checkerboard" pattern, as is illustrated in the figure below.
Output
The output consists of t lines; the k-th line should be the size of the corridor of the k-th tiling, if there exists a minimal corridor, and NO MINIMAL CORRIDOR, otherwise.