AT_arc205_a [ARC205A] 2x2 Erasing

Description

縦 $ N $ 行、横 $ N $ 列のグリッドがあります。上から $ r $ 行目、左から $ c $ 列目のマスをマス $ (r,c) $ と表します。各マスは黒か白で塗られており、マス $ (r,c) $ は $ S_{r,c} $ が `#` のとき黒で、 $ S_{r,c} $ が `.` のとき白で塗られています。 このグリッドに対して $ Q $ 個の質問が与えられるので、それぞれについて答えを求めてください。 $ i $ 番目 $ (1\le i\le Q) $ の質問では整数 $ U_i,D_i,L_i,R_i $ が与えられるので、以下の質問の答えを求めてください。 - $ U_i \le r \le D_i $ かつ $ L_i \le c \le R_i $ を **満たさない** マスを全て黒で塗った後、以下の操作を最大で何回できるか求めてください。 - マス $ (r,c),(r,c+1),(r+1,c),(r+1,c+1) $ が全て白で塗られているような整数の組 $ (r,c) $ を選び、これら $ 4 $ つのマスのうち $ 1 $ つを黒で塗る。 各質問について独立に解いてください。言い換えると、各マスの色は質問のたびにはじめの状態にリセットされます。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ Q $ $ S_{1,1}S_{1,2}\ldots S_{1,N} $ $ S_{2,1}S_{2,2}\ldots S_{2,N} $ $ \vdots $ $ S_{N,1}S_{N,2}\ldots S_{N,N} $ $ U_1 $ $ D_1 $ $ L_1 $ $ R_1 $ $ U_2 $ $ D_2 $ $ L_2 $ $ R_2 $ $ \vdots $ $ U_Q $ $ D_Q $ $ L_Q $ $ R_Q $

Output Format

$ Q $ 行出力せよ。 $ i $ 行目 $ (1\le i\le Q) $ には、 $ i $ 番目の質問に対する答えを出力せよ。

Explanation/Hint

### Sample Explanation 1 $ 1 $ 番目の質問について考えます。 $ 1\le r\le 3 $ かつ $ 1\le c\le 3 $ を満たさないようなマスを全て黒で塗ると、グリッドは以下のようになります。 ``` ..### ...## #..## ##### ##### ``` このグリッドに対して以下のように $ 2 $ 回操作を行うことができます。 - $ (r,c)=(1,1) $ を選ぶ。マス $ (1,1),(1,2),(2,1),(2,2) $ の中からマス $ (1,2) $ を選び、黒で塗る。 - $ (r,c)=(2,2) $ を選ぶ。マス $ (2,2),(2,3),(3,2),(3,3) $ の中からマス $ (2,2) $ を選び、黒で塗る。 $ 2 $ 回より多く操作をすることはできないので、 $ 1 $ 行目には $ 2 $ を出力してください。 ### Constraints - $ 2\le N\le 500 $ - $ 1\le Q\le 2\times 10^5 $ - $ S_{r,c} $ は `.` または `#` - $ 1\le U_i < D_i \le N $ - $ 1\le L_i < R_i \le N $ - $ N,Q,U_i,D_i,L_i,R_i $ は全て整数