求大神,ZOJ 1002题怎么老出错

题目链接
http://acm.zju.edu.cn/onlinejudge/showRuns.do?contestId=1
提交结果老是的回复是 wrong answer、
样本输入输出都正确。
我提交是用C++提交的,这个应该不成问题
求大神指点。 C语言
以下是我提交的源代码

#include"stdio.h"
#define N 6
char net[N][N];//最大存储数据容量
int MAX,max;//MAX为最终最大值,max为一轮最大值
int n;//一轮测试值网格大小
bool Find(int i,int j)
{
int p; //从上下左右搜索是否可以防治碉堡
for(p=i-1;p>=1;p--)//往上
{
if(net[p][j]=='*')
return false;
if(net[p][j]=='X')
break;
}
for(p=i+1;p<=n;p++)//往下
{
if(net[p][j]=='*')
return false;
if(net[p][j]=='X')
break;

}
for(p=j-1;p>=1;p--)//往左
{
if(net[i][p]=='*')
return false;
if(net[i][p]=='X')
break;
}
for(p=j+1;p<=n;p++)//往右
{
if(net[i][p]=='*')
return false;
if(net[i][p]=='X')
break;
}
return true;
}
void FLS()
{
if(max>MAX)
MAX=max;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(net[i][j]=='.'&&Find(i,j))
{
net[i][j]='*';
max++;
FLS();
max--;
net[i][j]='.';
}
}
void Fire_net()
{
int i,j;
scanf("%d",&n);
getchar();
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
scanf("%c",&net[i][j]);
getchar();
}
FLS();
printf("%d\n",MAX);

}
int main()
{
Fire_net();
return 0;
}


查看全部
qq_25973267
刘德聪
2015/08/26 16:09
  • c
  • zoj
  • 源代码
  • 点赞
  • 收藏
  • 回答
    私信

1个回复