警示后人!!!
查看原帖
警示后人!!!
597716
IT__windy楼主2022/9/13 14:52

搬板子只有52pt的看过来

	while(m--){
		read(opt),read(x);
		x^=last;
		switch(opt){
			case 1:insert(rt,x);break;
			case 2:del(rt,x);break;
			case 3:insert(rt,x);last=get_rank(rt,x)-1;del(rt,x);break;//看这里,先插入后删除
			case 4:last=get_val(rt,x+1);break;
			case 5:last=get_pre(x);break;
			case 6:last=get_next(x);break;			
		}
		if(opt>2)ans^=last;
	}

在查询排名时查询的数可能不存在,所以可以试试先插入,查询后再删除。

2022/9/13 14:52
加载中...