|시간 제한||메모리 제한||제출||정답||맞은 사람||정답 비율|
|90 초||512 MB||0||0||0||0.000%|
Given an rectangular grid of N rows and M columns, each cell can be labeled black (Yin) or white (Yang). Two cells are neighbors if they share a common unit-length edge segment. The grid is valid if all the black cells form a path, and all the white cells form a path. A path is a set
S of cells defined as follows:
S, you can reach any other cell in
Sby moving between neighbors within
Shave exactly one neighbor in
Seach. These are the "ends" of the path.
Shas exactly two neighbors in
For example, in the picture below, the first grid is valid, while the second grid is not -- although the black cells form a path, the white cells do not.
Given N and M, compute the number of valid grids. Note that symmetry doesn't matter -- as long as two valid grids differ in one position they are considered different, even if one can be rotated or flipped to the other.
The first line of the input will be a single integer T, the number of test cases. T lines follow, each of which contains two integers separated by a space: "N M", as defined above.
For each test case, output a line in the form "Case #x: A", where x is the case number, starting from 1, and A is the number of valid grids of the specified size.
3 4 4 4 6 5 5
Case #1: 24 Case #2: 44 Case #3: 48