#include <stdio.h>
#include <stdlib.h>
int is_correct(int num, char (*arr)[24], int is_col){
for(int i = 0; i < num; i++){
int b_num = 0, w_num = 0, count = 0;
char pre = 0;
for(int j = 0; j < num; j++){
// 행 검사
char cur = arr[i][j];
// 열 검사
if(is_col == 1)cur = arr[j][i];
// 연속 3개 검사
if(cur == pre){
count ++;
}
else{
count = 0;
}
// 연속 3개 시 return 0;
if(count == 2){
return 0;
}
// 검, 흰 카운트
switch (cur)
{
case 'B':
b_num ++;
pre = 'B';
break;
case 'W':
w_num ++;
pre = 'A';
break;
}
}
// 검 희 개수가 다르면 return 0;
if(b_num != w_num){
return 0;
}
}
// 모든 조건 만족 시 return 1;
return 1;
}
int main(void){
char arr[24][24] = {0};
// n 입력
int num = 0;
scanf("%d", &num);
getchar();
// wb격자 입력
for(int i = 0; i < num; i++){
for(int j = 0; j < num; j++){
scanf("%c", &arr[i][j]);
}
getchar();
}
// 행 검사 시 조건 만족 못 할경우 0출력 종료
if(!is_correct(num, arr, 0)){
printf("0");
return 0;
}
// 열 검사 시 조건 만족 할 경우 1 출력
if(is_correct(num, arr, 1)){
printf("1");
}
// 열 검사 시 조건 만족 못 할 경우 0 출력
else{
printf("0");
}
return 0;
}