Balanced Subsets
시간 제한: 1000ms메모리 제한: 512MB출처: USACO 2021 Open PlatinumBOJ 21813
문제
Farmer John's pasture can be regarded as a large 2D grid of square "cells" (picture a huge chessboard) labeled by the ordered pairs for each , (). Some of the cells contain grass.
A nonempty subset of grid cells is called "balanced" if the following conditions hold:
- All cells in the subset contain grass.
- The subset is 4-connected. In other words, there exists a path from any cell in the subset to any other cell in the subset such that every two consecutive cells of the path are horizontally or vertically adjacent.
- If cells and () are part of the subset, then all cells with are also part of the subset.
- If cells and () are part of the subset, then all cells with are also part of the subset.
Count the number of balanced subsets modulo .
입력
The first line contains .
The next lines each contain a string of characters. The -th character of the -th line from the top is equal to G if the cell at contains grass, or . otherwise.
출력
The number of balanced subsets modulo .
예제
예제 1
입력
2 GG GG
출력
13
예제 2
입력
4 GGGG GGGG GG.G GGGG
출력
642
코드를 제출하려면 로그인하세요.