一个关于bool的语法问题
查看原帖
一个关于bool的语法问题
536337
eb0ycn楼主2024/10/18 20:25

我把我AC的代码改吧了一下,其他都不变,就把 trans 函数改成了这样:

void trans(int rt){
	if(uni[rt]&ins[rt])uni[rt]^=1,ins[rt]^=1;
	if(uni[rt]==0&&ins[rt]==0)uni[rt]^=1,ins[rt]^=1;
	lz[rt]^=1;
	}

就WA了。

另外,把 uni[rt]==0&&ins[rt]==0 改成 ~uni[rt]&~ins[rt]!uni[rt]&!ins[rt] 都不行。

uni 表示或,ins 表示与,lz 是懒标记。都是 bool 类型的。

目测应该是 bool 类型的运算出了问题。所以能问一下为什么会爆吗?

2024/10/18 20:25
加载中...