3214975_wa.cpp
来自「北大大牛代码 1240道题的原代码 超级权威」· C++ 代码 · 共 62 行
CPP
62 行
#include <stdio.h>
#include <string.h>
int num[5];
char map[11][11];
int mov[][2] = {{0,1},{0,-1},{1,1},{1,-1},{1,0},{-1,-1},{-1,0},{-1,1}};
int cnt;
void flood_fill(int i,int j)
{
int k;
map[i][j] = '.';
cnt++;
for(k = 0; k < 8; k++)
{
if(map[i+mov[k][0]][j+mov[k][1]]=='1')
{
flood_fill(i+mov[k][0],j+mov[k][1]);
}
}
}
int main()
{
int i, j, n;
for(i = 1; i <= 10; i++)
{
scanf("%s",&map[1]);
}
for(i = 1; i <= 10; i++)
{
if(map[i][1]=='1'||map[i][10]=='1'||map[1][i]=='1'||map[10][i]=='1')
{
puts("incorrect");
return 0;
}
}
n = 0;
memset(num,0,sizeof(num));
for(i = 1; i <= 10; i++)
{
for(j = 1; j <= 10; j++)
{
if(map[i][j]=='1')
{
cnt = 0;
flood_fill(i,j);
num[cnt]++;
n++;
}
}
}
if(n!=10||num[1]!=1||num[2]!=2||num[3]!=3||num[4]!=4)
puts("incorrect");
else
puts("correct");
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?