记录编号 |
404454 |
评测结果 |
AAAAA |
题目名称 |
细胞个数 |
最终得分 |
100 |
用户昵称 |
fate1 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.002 s |
提交时间 |
2017-05-13 16:24:40 |
内存使用 |
0.33 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<queue>
using namespace std;
queue<int> fk;
queue<int> nm;
bool wc[101][101]={false};
int main()
{
freopen("cellnum.in","r",stdin);
freopen("cellnum.out","w",stdout);
int n,m,ans=0;
cin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
char a;
cin>>a;
if(a!=48)
wc[j][i]=true;
else
wc[j][i]=false;
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(wc[j][i]==true)
{
fk.push(j);
nm.push(i);
wc[j][i]=false;
while(fk.empty()!=true)
{
if(wc[fk.front()+1][nm.front()]==true)
{
fk.push(fk.front()+1);
nm.push(nm.front());
wc[fk.front()+1][nm.front()]=false;
}
if(wc[fk.front()-1][nm.front()]==true)
{
fk.push(fk.front()-1);
nm.push(nm.front());
wc[fk.front()-1][nm.front()]=false;
}
if(wc[fk.front()][nm.front()+1]==true)
{
fk.push(fk.front());
nm.push(nm.front()+1);
wc[fk.front()][nm.front()+1]=false;
}
if(wc[fk.front()][nm.front()-1]==true)
{
fk.push(fk.front());
nm.push(nm.front()-1);
wc[fk.front()][nm.front()-1]=false;
}
fk.pop();nm.pop();
}
ans++;
}
}
}
cout<<ans;
return 0;
}