페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#5769

Balanced Subsets 1초 512MB

문제

Farmer John's pasture can be regarded as a large 2D grid of square "cells" (picture a huge chessboard) labeled by the ordered pairs (i,j) for each 1≤i≤N, 1≤j≤N (1≤N≤150). Some of the cells contain grass.

A nonempty subset of grid cells is called "balanced" if the following conditions hold:

  1. All cells in the subset contain grass.

  2. 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.

  3. If cells (x1,y) and (x2,y) (x1≤x2) are part of the subset, then all cells (x,y) with x1≤x≤x2 are also part of the subset.

  4. If cells (x,y1) and (x,y2) (y1≤y2) are part of the subset, then all cells (x,y) with y1≤y≤y2 are also part of the subset.

Count the number of balanced subsets modulo 10^9+7.


입력

The first line contains N.

The next N lines each contain a string of N characters. The j-th character of the i-th line from the top is equal to G if the cell at (i,j) contains grass, or . otherwise.


출력

The number of balanced subsets modulo 10^9+7.


예제1

입력
2
GG
GG
출력
13

For this test case, all 4-connected subsets are balanced.

G.  .G  ..  ..  GG  .G  ..  G.  GG  .G  G.  GG  GG
.., .., G., .G, .., .G, GG, G., G., GG, GG, .G, GG

예제2

입력
4
GGGG
GGGG
GG.G
GGGG
출력
642

Here is an example of a subset that satisfies the second condition (it is 4-connected) but does not satisfy the third condition:

GG..
.G..
GG..
....

출처

USACO 2021 US Open Platinum

역링크 공식 문제집만