JOI 庭園は縦 N 行,横 N 列のマス目状に区切られた正方形の形をしている.
上から i 行目 ( \(1 \le i \le N\) ),左から j 列目 ( \(1 \le j \le N\) ) のマスは区画 (i, j) と呼ばれている.
JOI 庭園は土壌にあまり恵まれていないため,各区画には特定の 1 種類の色の花を, 最大 1 本しか植えることができない.
具体的には,区画 (i, j) には A i, j = R のとき赤, A i, j = Y のとき黄, A i, j = B のとき青の色の花を最大 1 本しか植えることができない.
ここで,この庭園の管理者である K 理事長は,航空写真を撮った時の見栄えを良くするため,次の手順で花を植えようと思っている.
大きさ を表す整数 r を決める.ただし 0 ≦ r ≦ (N-1) ÷ 2 を満たさなければならない.
中心 を表す区画 (x, y) を決める.ただし r+1 ≦ x ≦ N-r , r+1 ≦ y ≦ N-r を満たさなければならない.
色 c 0 , c 1 , c 2 , ..., c r をそれぞれ赤・黄・青の中から選んで決める.
それぞれの区画 (x', y') について, d = |x'-x| + |y'-y| に応じて以下の規則で花を植える.ただし, |t| は t の絶対値を表す.
\(d \le r\) であるならば,区画 (x', y') には色 c d の花を植える.
d > r であるならば,区画 (x', y') には花を植えない.
庭園の大きさ,各区画に植えることができる花の色の情報が与えられたとき,K 理事長が植えることができる花の数の最大値を求めるプログラムを作成せよ.
3 ≦ N ≦ 3 500 .
A i, j は R , Y , B のいずれかである ( \(1 \le i \le N, 1 \le j \le N\) ).
N は整数である.
( 4 点) N = 3 .
( 13 点) \(N \le 50\) .
( 17 点) \(N \le 800\) .
( 14 点) A i, j ≠ R を満たす (i, j) ( \(1 \le i \le N, 1 \le j \le N\) ) は 5 個以下である.
( 16 点) どの (i, j) ( 1 ≦ i ≦ N-1, 1 ≦ j ≦ N-1 ) についても, A i, j , A i, j+1 , A i+1, j , A i+1, j+1 の中に R が 3 個以上存在する.
( 36 点) 追加の制約はない.
入力は以下の形式で与えられる.
N
A 1,1 A 1,2 ... A 1,N
A 2,1 A 2,2 ... A 2,N
...
A N,1 A N,2 ... A N,N
K 理事長が植えることができる花の数の最大値を 1 行で出力せよ.
3
RYR
YBY
BYY
5
9
YYRYBBBYR
BYYRRBYBB
RBRRBRBBY
RYRBRYRBR
YYBRYYYRB
RRYBRYRBR
RBYRBRBRB
BRYYRBBBR
RBBBYBRRY
25
6
RBYRBY
BYRBYR
YRBYRB
RBYRBY
BYRBYR
YRBYRB
1
20
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRBRRRRRRRRRRRRYRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRYRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRYRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRBR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
RRRRRRRRRRRRRRRRRRRR
85
10
RRRRRRRRRR
RYRRRRRRRR
RRRRYRRRRR
RBRRRRRRRR
RRRRRRRRYR
RBRRRRRRRR
RRRRBRRRRR
RBRRRRRRRR
RRRRRRRRYR
RRRRRRRRRR
25