枚举每个点,然后输出....
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char s[105][105]; int a[105][105],i,j,n;
int _check()
{
for (int i=0;i<n;i++)
for (int j=0;j<n;j++)
if (a[i][j]%2!=0) return 0;
return 1;
}
int main()
{
memset(s,0,sizeof(s));
scanf("%d",&n);
for (i=0;i<n;i++) scanf("%s",&s[i]);
for (i=0;i<n;i++)
for (j=0;j<n;j++)
{
if (s[i-1][j]=='o' && i-1>=0) a[i][j]++;
if (s[i+1][j]=='o') a[i][j]++;
if (s[i][j-1]=='o' && j-1>=0) a[i][j]++;
if (s[i][j+1]=='o') a[i][j]++;
}
if (_check()) cout <<"YES";
else cout <<"NO";
return 0;
}