小技巧锦集

记录一下总结出的一些小技巧。

基础

开变量 or 数组

  • 不开 long long 见祖宗,必要时开 unsigned long long
    做题时一定要注意数据范围,并考虑每一步计算是否会爆 int 。

  • 数组一定要开到足够大小
    一定要结合题目,看清范围,有时需要经过一定计算
    PS: 有的时候 cf 显示 WA 实际上是数组爆了我还因为这个掉过一次分

输入

  • 尽量少用 cin , scanf 永远滴神
    有的时候输入速度确实能决定结果517天天卡

  • 输入字符串或单个字符时用 scanf + %s

    需要读单个字符尽量都用 %s ,以及避免读回车。 —— 517

初始化

  • memset(a, 0x3f, sizeof a)

具体算法

二分

  • 二分的时候 l 与 r 不要作死定成 $\pm$INF
    会被卡。嗯。

  • 想二分的时候看清楚有无单调性,单调性是怎样的。

数论相关

  • 题目有取模,计算中有相减的时候,计算时加上一个模数

  • 数学题不要忘记考虑 0

$\text{To be continued}$