pushdown 里面不能传完一个标记就 return 啊。
```cpp
void pushdown(int i)
{
if(t[i].lazyinv)
{
invert(lson),invert(rson);
t[i].lazyinv=0;
return ;
}
if(t[i].lazycov)
{
cover(lson,t[i].lazycov),cover(rson,t[i].lazycov);
t[i].lazycov=0;
return ;
}
if(t[i].lazyrev)
{
reverse(lson),reverse(rson);
t[i].lazyrev=0;
return ;
}
}
```
去掉return
```cpp
void pushdown(int i)
{
if(t[i].lazyinv)
{
invert(lson),invert(rson);
t[i].lazyinv=0;
}
if(t[i].lazycov)
{
cover(lson,t[i].lazycov),cover(rson,t[i].lazycov);
t[i].lazycov=0;
}
if(t[i].lazyrev)
{
reverse(lson),reverse(rson);
t[i].lazyrev=0;
}
}
```
by zdl777 @ 2023-03-26 21:31:30
@[zdl777](/user/542070) 啊啊啊啊啊谢谢!!!!
by Y2y7m @ 2023-03-26 22:32:56