考场注意:
- 考场上编译一定把文档里的参数全加上,包括
-O2
-std=c++14
-static
等等。 - 强制在线不要忘了更新
lastans
。 - 分块不要写反
num
和n
。 ios::sync_with_stdio(0)
之后不能用stdio
库函数。- 想不出来的时候看看读没读错题。
#define int long long
,即使你认为不会爆int
。- 数组开大一点,即使你认为它不会炸。
- 在想转移之前,为了防止做无用功,最好先想想该如何统计答案。
- 它跑不满,尽量让它少跑点。
cmath
库的东西尽量用带l
的,如sqrtl
,powl
,要不然容易炸精度- int128 这种东西少用,尤其是在和各种库里的东西结合的时候容易出锅,除非你觉得一定会爆
long long
。 - 如果做不出来题,考虑 保证正确性,骗复杂度 或 保证复杂度,骗正确性,数据水的话甚至能 AC。 P7521
- 实数二分,eps 最好比要求的精度再小一两个数量级,但是也别小太多。
- 树形数据结构注意
l
r
写没写错。 - DP 状态不好设或者不好转移,试试容斥。
- 怎么做复杂度都很高,试试根号分治。
- DP 递推顺序不好搞可以记忆化。
- 当发现想的做法复杂度错误时,不要马上放弃,继续想下去,说不定可以优化。但是再想不出来就换思路吧。
- 随机化不一定非要退火,视题目而定。
- 不要不敢推式子。
- 遇到题可以先找必要条件,然后考虑这个必要条件是否充分。如果充分是很好的,如果不充分可以考虑添加条件使它充分,或者考虑随机化。
- 不要怕分讨,可以把分讨情况写纸上。
- 枚举会的所有东西乱搞。