FST……

FST……

变量类型

  • 部分应该开long long的变量没有用long long
    • 提交前仔细检查题目中每个变量的数据范围,特别注意单个变量是否要开long long
  • 因为使用long long过多而 MLE
    • 不需要用long long时,尽量不要用
    • 谨慎使用#define int long long
  • long longprintf输出时要用%lld
    • 编译记得开-Wall

STL

  • 使用pair并且排序时,没有判断第一关键字是否存在了first
    • 尽量自己写结构体和比较函数
  • 数组中uniquelower_bound是否需要 -1 弄混
    • unique返回值为被去掉的元素所存放的begin位置,lower_bound返回第一个满足的元素所在位置
  • multiset中删除单个元素应该用S.erase(S.find(val)),直接S.erase(val)会删除set中所有等于val的元素

代码实现

  • freadscanf不能混用
  • if之后忘记敲else,导致本应在else中的语句每次都会执行
    • 提交前仔细阅读代码,确认流程
  • 答案要取模的题目中,运算时忘记调用写好的函数
  • 将树中节点的dep和节点到根的距离dis搞混,导致倍增求LCA时错误
    • 不要用dep命名节点到根的距离
  • dsu on tree中,忘记加入当前节点的信息

算法

  • 判断联通性时习惯于用并查集,但可能位于时间复杂度瓶颈,导致被卡常
    • 用Bfs或Dfs代替
  • 图论问题中,要注意题目是否保证图联通
  • 树哈希时每次base都只乘了一次
    • base的几次方,应该由子节点已经包含的信息个数决定
posted @ 2018-10-15 15:12  Rebirth_A  阅读(206)  评论(0)    收藏  举报