P1536,编译时说有致命错误然后编译失败。
代码:
#include<iostream>
using namespace std;
long long fa[10005];
inline void init(long long x)
{
for(int i = 1;i<=x;i++){fa[i]=i;}
}
long long find(long long x)
{
return x == fa[x]?x : (fa[x]=find(fa[x]));
}
void merge(long long x,long long y)
{
fa[x] = y;
}
int main()
{
long long n,m,c,d,cnt = 0;
while(1)
{
cin >> n;
if(n == 0){break;}
cnt = 0;
cin >> m;
init(n);
for(int i = 1;i<=m;i++)
{
cin >> c >> d;
merge(c,d);
}
for(int i = 1;i<=n;i++)
{
if(find(i)==i)
{
cnt++;
}
}
cout << cnt - 1 << endl;
}
return 0;
}
编译信息:
/tmp/compiler__027hgao/src:46:1: 致命错误:写入 ./cc9ToRgP.s 时出错:No space left on device
46 | }
| ^
编译中断。
希望能有人帮忙看下是是什么问题。提交时选的c++17