这数据太水了吧!
查看原帖
这数据太水了吧!
474113
MoYuFang楼主2021/10/28 11:36

90分RE记录

AC记录

两份代码的关键区别是: RE那份:dfs 时只有一颗子树时忘了 dfs 那颗仅有的子树。

void dfs(int u){
	if (!ch[u][0]) addn(rt[u], 1, a[u], 1, rg);
	else if (!ch[u][1]) rt[u] = rt[ch[u][0]];
	else{
		dfs(ch[u][0]), dfs(ch[u][1]);
		pp = a[u]; np = (mod+1-pp)%mod;
		rt[u] = mmerge(rt[ch[u][0]], rt[ch[u][1]], 0, 0, 1, rg);
	}
}

AC那份:dfs 了那颗仅有的子树。

void dfs(int u){
	if (!ch[u][0]) addn(rt[u], 1, a[u], 1, rg);
	else if (!ch[u][1]) dfs(ch[u][0]), rt[u] = rt[ch[u][0]];
	else{
		dfs(ch[u][0]), dfs(ch[u][1]);
		pp = a[u]; np = (mod+1-pp)%mod;
		rt[u] = mmerge(rt[ch[u][0]], rt[ch[u][1]], 0, 0, 1, rg);
	}
}

犯了这么关键的错误都有90分,笑了。

2021/10/28 11:36
加载中...