求助!这个 C++代码在洛谷评测机上提交了几遍都无法编译通过,并且编译信息很奇怪,但是它在我的 Dev-C++编译器上能通过。请问这个代码有什么问题?
代码:
#include<bits/stdc++.h>
using namespace std;
bool sky[1502][1502];
int star[100001],dx[]={1,-1,0,0,1,1,-1,-1},dy[]={0,0,1,-1,1,-1,1,-1},num,maxx=0,ans=0,maxans=0;
int n,m;
void dfs(int x,int y)
{
num++;
sky[x][y]=0;
for(int i=0;i<8;i++)
{
if(sky[x+dx[i]][y+dy[i]])
{
dfs(x+dx[i],y+dy[i]);
}
}
}
int main()
{
cin>>n>>m;
char c;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>c;
if(c=='*')
{
sky[i][j]=1;
}
else
{
sky[i][j]=0;
}
}
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
if(sky[i][j])
{
num=0;
dfs(i,j);
star[num]++;
maxx=max(maxx,num);
}
}
}
for(int i=1;i<=maxx;i++)
{
if(star[i])
{
ans++;
maxans=max(maxans,star[i]*i);
}
}
cout<<ans<<" "<<maxans;
return 0;
}
编译信息:
/tmp/compiler_olfdhjkb/src:60:1: 致命错误:写入 ./ccETwlPV.s 时出错:No space left on device
60 | }
| ^
编译中断。