比赛 |
暑假培训B班二测 |
评测结果 |
AAAAAAAA |
题目名称 |
劣质的草 |
最终得分 |
100 |
用户昵称 |
临轩听雨ゐ |
运行时间 |
0.073 s |
代码语言 |
C++ |
内存使用 |
80.46 MiB |
提交时间 |
2012-07-22 10:44:05 |
显示代码纯文本
#include<fstream>
using namespace std;
int a[1005][1005],b,c,d,p,q,h,t,l,s=0,x[10000001][2],y[9][2]={{-1,-1},{-1,0},{-1,1},{1,-1},{1,1},{1,0},{0,-1},{0,1}};
int main(void)
{
ifstream fin("badgras.in");
ofstream fout("badgras.out");
int m,n;
fin>>m>>n;
for (c=0;c<m;c++)
for (d=0;d<n;d++)
fin>>a[c][d];
for (c=0;c<m;c++)
for (d=0;d<n;d++)
if (a[c][d]!=0)
{
x[0][0]=c;
x[0][1]=d;
a[c][d]=0;
t=0;
h=1;
while (h>=t)
{
for (l=0;l<8;l++)
{
x[h][0]=x[t][0]+y[l][0];
x[h][1]=x[t][1]+y[l][1];
if ((x[h][0]<0)||(x[h][1]<0)||(x[h][0]>=m)||(x[h][1]>=n)) continue;
if (a[x[h][0]][x[h][1]]!=0)
{
a[x[h][0]][x[h][1]]=0;
h++;
}
}
t++;
}
s++;
}
fout<<s;
fin.close();
fout.close();
return 0;
}