原题传送门:Lunar New Year and Cross Counting
欣赏完美妙的图案后,我们发现:这题数据很小,可以直接枚举(具体解释就放代码里了):
#include <iostream>
using namespace std;
int main()
{
int n, count = 0;
char a[501][501];
cin >> n;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
cin >> a[i][j];
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= n; j++)
{
if (a[i][j] == 'X') // 逆时针检索
{
if (a[i + 1][j + 1] == 'X') // 右下
{
if (a[i + 1][j - 1] == 'X') // 左下
{
if (a[i - 1][j - 1] == 'X') // 左上
{
if (a[i - 1][j + 1] == 'X') // 右上
{
count++;
}
}
}
}
}
}
}
cout << count;
return 0;
}