十字架
时间限制: 1000ms内存限制:
128000KB 64位整型: Java 类名:
上一题 提交 运行结果 统计 讨论版 下一题
类型:
没有
添加
题目描述
现在给你一个7*7的正方形,让你来数一数这个正方形中有多少的十字架。一个十字形为一个十字架,多个个十字架可以相连。
例如:1 1 0 1 0 1 0
1 1 1 1 1 1 1
1 0 1 0 0 1 0
1 0 1 0 0 1 0
1 1 1 1 1 1 1
0 0 1 0 1 1 1
0 1 1 1 1 1 1
中有4个十字架。
输入
输入第一行有一个数T表示有T组测试数据。
接下来输入T个7行7列的一个正方形。
每行中的两个元素用空格隔开。
输出
每组输出数据有一个数代表有几个十字架,每组数据占一行。
样例输入
2
1 1 0 1 0 1 0
1 1 1 1 1 1 1
1 0 1 0 0 1 0
1 0 1 0 0 1 0
1 1 1 1 1 1 1
0 0 1 0 1 1 1
0 1 1 1 1 1 1
0 1 0 1 0 1 1
1 1 1 1 1 1 1
0 1 1 1 0 1 1
1 0 1 1 0 1 1
1 1 0 0 0 0 1
1 1 1 1 1 1 1
0 1 0 0 1 0 1
样例输出
4
5
来源
NYOJ
#include<iostream>
using namespace std;
int main()
{
int a[8][8]= {0};
int n,i,j;
cin>>n;
while(n--)
{
for(i=0; i<7; i++)
for(j=0; j<7; j++)
cin>>a[i][j];
int count=0;
for(i=1; i<6; i++)
for(j=1; j<6; j++)
if(a[i][j-1]==1&&a[i][j+1]==1&&a[i+1][j]==1&&a[i-1][j]==1&&a[i][j]==1)
count++;
cout<<count<<endl;
}
return 0;
}