社区讨论
求助,本地Dev允许栈空间太小,如何增大?
学术版参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @m3dqc1ai
- 此快照首次捕获于
- 2024/11/12 08:44 去年
- 此快照最后确认于
- 2025/11/04 14:53 4 个月前
在本地写树上问题时发现大样例RE了,是爆栈,但是不知道是什么问题,递归代码如下:
CPPvoid dfs1(int x,int fa){
f[x][0]=fa;cnt[x]=0ll;
depth[x]=depth[fa]+1ll;
for(int i=1;i<=20;i++){
f[x][i]=f[f[x][i-1]][i-1];
}
for(int i=head[x];i;i=e[i].nxt){
int v=e[i].to;
if(v==f[x][0])continue;
a1[v]=e[i].val1;a2[v]=e[i].val2;
dfs1(v,x);
}
}
经本地测试,在主函数中调用如下 ,递归只能运行40000层左右就会爆栈
CPPint u=0;
void test(){
u++;
printf("u=%lld\n",u);
test();
}
是本人的Dev有什么问题吗?
回复
共 2 条回复,欢迎继续交流。
正在加载回复...