rt
刚刚调一道线段树的题目,写了这样一个结构体:
struct node{
int l,r;
bool tag;
str ls,rs;
node(){}
node(int l,int r):l(l),r(r){}
};
node t[2000005];
然后样例没过。
调了 30min,发现有一个节点好像意外执行了 spread 操作下放懒标签。
然后大概写了这样的调试代码:
for(int p=1;p<=4*n;++p){
if(t[p].l==0) break;
clog<<p<<" "<<t[p].tag<<endl;
}
输出的全都是 246,8 之类的东西。
然后把 tag 默认初始化为 0,就过了。
有没有大佬解释一下这是为什么?