注意
取模。
开 long long。有没有 #define int long long。
scanf 一般要写 &。
二维的东西,注意不要把 m 写成 n。不要把 m 和 n 弄混。
用 getchar() 读字符需谨慎。可以尝试用 cin。
不要把 += 写成 =。
不要把 b 写成 a。
分清要算 r - l(给两个横坐标,算横向的距离) 还是 r - l + 1(算区间里有多少个点)。
变量要先声明再用。
普通的线段树开 ( 4 倍 + 1 ) 空间即可(因为序列长为 \(2 ^ { n - 1 } + 1\) 时是极限情况,\(最大结点编号(不知道能不能取到) ( 2 ^ n + ( 2 ^ n - 1 ) ) = 4 \cdot ( 2 ^ { n - 1 } + 1 ) - 5 < 4 \cdot ( 2 ^ { n - 1 } + 1 )\)),但是不是叶子结点才能下放标记(即不能下放叶子结点上的标记)(有时要判断,如:P3373 【模板】线段树 2)。也可以考虑开 ( 8 倍 + 1 ) 空间,此时可以下放叶子结点上的标记。
倍增时注意数组开到的是多少,枚举的是多少(0~19?)。
注意在 for 循环里是 <= 还是 <,从 0 开始还是从 1 开始。
不要忘了给新开的结点初始化。(创建了就立即初始化)。(尤其是给存 max 和/或 min 的东西初始化)。如:线段树(注意(这个题里不能把 mx 初始化成 - ((int)1e9) 之类的,而应该让其初值为 0):P4556 [Vani有约会] 雨天的尾巴 /【模板】线段树合并)。
注意线段树的范围是 1 到 n 还是其他的。不要习惯性地写就写错了。如:P4556 [Vani有约会] 雨天的尾巴 /【模板】线段树合并。
动态开点线段树开空间时要注意。一般开 (log * 要新开点的操作的次数)(???)。注意有可能一步要操作多次。如:P4556 [Vani有约会] 雨天的尾巴 /【模板】线段树合并。
线段树,不要让叶子结点 PushUp。也可以不管,但要在 PushUp 里特判没有左子结点 且 没有右子节点的情况。
PushUp 时要特判没有左子结点 或 没有右子节点的情况。
https://www.luogu.com.cn/discuss/860700
注意复制之后要彻底地修改。不要把 Split_Value 里的 Split_Value 写成 Split_Size(如:P3369 【模板】普通平衡树(FHQ-Treap 做法))。有两种 DFS 的代码也是这样。
不要忘了给自己写的数据结构初始化。(调用 Init())
不要忘了初始化。
FHQ-Treap 如果用一个结点来维护很多个同一数值的数(对每个结点记一个 cnt),Split_Size(按大小分裂)就可能会出问题(???)(按每个结点只维护一个数,多个同一数值的数用多个结点存的写法的话)。
FHQ-Treap 的 Merge 和 Split_Size 和 Split_Value 里面都是有顺序的。
指数取模。
“CF 多测题不能 memset”——M1ndeveloped
“在CF不能写Hash”——Grimgod
注意结点编号等从 0 开始还是从 1 开始。
注意存边的数组要不要开两倍空间。(无向边(双向边(?)))。
多测要清空。(如果变量、数组等(?)全部在 solve() 里声明就不用清空)(???)。
注意从 0 开始还是从 1 开始。注意是 <= 还是 <。
注意仔细弄好输入。看清输入什么、输入格式是什么。
注意可不可以是负数,可不可以是 0(?)。
怎么算数组之类的占了多少空间?
double 和 long long 哪个大?
注意 sort 后编号可能会变。https://www.luogu.com.cn/discuss/728435
也(?)可以记一下每个点对应的原来的编号。
注意树状数组判 i >= 1。
注意线段树维护的区间(??)是什么。是 1 到 n 还是 1 到 k。
注意树状数组维护的上限是什么。是 n 还是 k。
注意一个东西还是不是原来的它。https://www.luogu.com.cn/discuss/697979
注意遍历顺序。(正/反)。
不要把数据类型搞错。
写 1ll * 。
或者 #define int long long,signed main()。
或者直接开 long long。
指 数 取 模。
区分 p 和 P(都是模数)。不要写混了。尤其是在快速幂中。
在函数内部开的数组里面的值是随机的。——Hanghang
https://www.luogu.com.cn/discuss/815673
cout printf 混用:https://blog.csdn.net/qq_28236309/article/details/52200632
标签:结点,不要,线段,持续,long,注意,更新,Split From: https://www.cnblogs.com/huangkxQwQ/p/18321801