求助
  • 板块CF482E ELCA
  • 楼主Freopen
  • 当前回复3
  • 已保存回复3
  • 发布时间2020/6/6 10:27
  • 上次更新2023/11/7 01:08:52
查看原帖
求助
30037
Freopen楼主2020/6/6 10:27

WA4的代码(CF上说是溢出了,本机(的坑爹DevC++编译器)跑50000的随机数据没有溢出,UOJ自定义测试没有溢出)

 
int main(){
	ios :: sync_with_stdio(0);
	cin >> n;
	for(int i=2;i<=n;i++){
		cin >> ft[i];
		fa[i] = ft[i];
	}
	for(int i=1;i<=n;i++){
		access(i),splay(i);
		int x;
		cin >> x;
		a[i] = x;
		sx[i] = 1;
		upd(i);
	}

AC的代码

void dfs(int u){
	sx[u] = 1;
	for(int v:G[u]){
		dfs(v);
		sx[u] += sz[v];
		sx2[u] += sqr(sz[v]);
		xans[u] += ans[v];
	}
	upd(u);
}
 
int main(){
	ios :: sync_with_stdio(0);
	cin >> n;
	for(int i=2;i<=n;i++){
		cin >> ft[i];
		fa[i] = ft[i];
		G[fa[i]].push_back(i);
	}
	for(int i=1;i<=n;i++) cin>>a[i];
	dfs(1);

代码的其余部分可以认为和第一篇题解一样。

表示不知道为什么会WA。

这世界连我初始化的自由都要剥夺吗

2020/6/6 10:27
加载中...