警钟

建议检查:

  • 区间dp先枚举区间长度

  • 按秩合并别合并反了

  • lowbit返回二进制的这个数

  • LCT数组别开小了

  • 线段树分治记得撤销并查集而不要干一些奇奇怪怪的事

  • 并查集不要直接用两个点查询,记得先find一下

  • 区间dp记得判断右端点有没有超出范围

  • 多取模! 取模!取模!

  • 计算子树大小时先递归再算,是siz[u]+=siz[v]别写反了

  • 长链剖分记得开下标数组

  • vectorresize函数在重新定义空间后是直接将这些空间赋值为0,所以resize后直接push_back会在resize后面的空间存储,应改为赋值

  • 虚树里的点是不全的 如果答案涉及全局贡献的统计 要考虑一下是否需要强制根节点入栈

  • void函数写记得写返回值

  • 对递归函数取max时不要用#define max(a,b) (a>b?a:b)

  • 函数内定义的变量注意不要和全局变量重名

  • 多测记得清空

  • 多测特判要continue 不要return 0;

  • 线段树递归左右区间注意别判断反了

  • 不开long long见祖宗 全开long long见太奶 dill邪教!

  • 圆方树有两倍点,处理的时候不要只处理圆点

  • 建双向边要不然就两次add,要不然就在add里建两次,不要一起用/fn/fn/fn

  • 左移和右移不要用混

  • 开一个MAXN的数组其可用下标为1~MAXN-1 注意不要越界

  • 注意区分仙人掌和点双 两者建圆方树时缩点方式是不一样的

  • 模拟赛记得检查提交要求

  • 快读记得判断负数

  • 注意题面上说的 \(数据存在梯度\) 不要自己把时空限制卡死了 可以多拿点分的

  • 区间左右端点不一定满足l<=r 尤其是环形问题 记得swap

  • 注意输出格式 多答案是SPJ还是按特定顺序输出

  • 考虑一下形如x-1这种东西-1到底会不会出问题 需不需要特判一下数组越界啥的

  • 考虑好数组大小啊 n个白点n个黑点开一个n的数组是不是有点唐了啊。

  • 注意 \(n\)\(m\) 别写反了 尤其是某些恶毒的题样例全是 \(n=m\) 的时候 记得自己捏几组样例测一下

  • 注意 倍长数组 四倍空间 可持久化 等等有没有把空间开够

  • 除法记得考虑一下会不会出现除0问题


  • 2025.3.15 ABC-E 树的情况直接开始贪了完全没考虑两条链拼起来的情况,浪费巨多时间
  • 2025.3.30 一轮省集D1T2 判质数没特判1
  • 2025.4.1 没处理好vis标记,导致有些合法的点被判掉了,线下关了暴力分段导致此题近乎保龄
  • 2025.4.14 P5021 dfs有公共临时数组,请注意先完成所有的递归再去处理本结点答案,要不然数组在下一层递归就被清干净了
  • 2025.4.29 期中#1T4 __builtin_popcount() 函数参数类型是unsigned int,long long扔进去会炸,应该使用 __builtin_popcountll()
  • 2025.7.17 link 注意数据范围,注意有些题可能是数据点分治题
  • 2025.8.5 注意 \(n\) \(m\) 别写混了。。
  • 2025.8.7 状压循环位移记得 unsigned
  • 2025.11.8 哈希对字符的赋值不要取0,不然无法区分a和aa这种情况!!
posted @ 2025-04-14 17:18  洛苡hh  阅读(7)  评论(0)    收藏  举报