数据过弱
查看原帖
数据过弱
369411
DANNNqwq楼主2023/10/1 13:26

我把Splay rotate函数中的

maintain(y);maintain(x);

写成了

maintain(y);maintain(z);

却通过了,rotate函数如下:

void rotate(int x) {
	int y=fa[x],z=fa[fa[x]],chk=get(x);
	ch[y] [chk]=ch[x] [chk^1];
	if(ch[x] [chk^1]) fa[ch[x] [chk^1]]=y;
	ch[x] [chk^1]=y;
	fa[y]=x;
	fa[x]=z;
	if(z) ch[z] [y==ch[z] [1]]=x;
	maintain(y);maintain(x);
}

希望加强数据 @StudyingFather
还有P3369也是

2023/10/1 13:26
加载中...