、

挂分注意事项/Trick

  1. Think twice, code once
  2. 最后检查一下数组大小有没有开小(图论,值域,字符串)
  3. 输出单词啥的直接复制
  4. 把动规式子写下来
  5. 仔细算空间大小,看看用了多少
  6. 最后检查容易写混的字母有没有写错,比如类似行列的r,c 与 m,n 和 p,q
  7. 推一大堆式子的时候不要跳步,把每一步都写在草稿纸上,不要相信自己的脑子。
  8. 不要信卡常,相信现在的程序可以做到正解跑飞快,紧贴时限一定是写错了
  9. 在使用到不可避免的名称相近的变量时要减慢速度慢慢写,任何一个地方。
  10. freopen("xx1.in")
  11. 在做完的时候一定要检查如果全部开 long long 会不会 MLE
  12. 仔细考虑动规边界是否符合定义,不要多设和少设。
  13. 使用memset 时注意sizeof的值有没有写混,如memset(vs,false,sizeof(vis)
  14. 如果已经写了暴力且数据好造且时间充足不妨写个对拍,否则挂掉的话就会很难受
  15. 写最短路时如果有多个可能性(比如取反一些值啥的),那么距离数组和访问数组不能只开 \(d_u\),要开成 \(d_{u,0/1}\) 之类的。
  16. 形如 if(i) 或 for(int i=20;i;--i) 是循环到大于 \(0\)
  17. 如果用cin,cout一定要关同步
  18. 如果卡常的话能不开 long long 就不开
  19. cout输出ceil啥的看起来是整数的要强转整形,否则会科学计数法输出
  20. \(2^{60}\approx 1.15\times10^{18}>10^{18}\)
  21. 写暴力的时候数组开成和暴力范围一样的大小,否则可能会出现 memset 时间复杂度假掉的情况
  22. 在数据过大(超 int)时不要用 cmath 里的东西,如 sqrt 等,会炸精度,自己写二分
  23. 多维数组尝试不要来回换维,常数有巨大提升
  24. dijkstra等最短路与边数有关,如果 n很小但是m很大的话换成floyd更好
  25. 浮点运算先乘后除,防止精度问题。
  26. 线段树注意别忘 push_up
  27. 链式前向星遍历不要写成 i=head[i]
  28. 二分或其他mid不要手滑写成(l+1)/2或(1+r)/2
  29. 按秩合并并查集复杂度是 \(O(\log n)\) 的。
  30. lower_bound(se.begin(),se.end()) 是 \(O(n\log n)\) 的。
  31. 在有 \(0\) 的情况下不可以使用前缀积。
  32. 多维动规之类的数组一定要算空间。
  33. 不要相信大样例。
  34. 懒标记的未访问标记一定要注意别和真正的重复。
  35. 队列记得 pop()
  36. \(a \mod b\) 转成 \(a-b\lfloor \frac{a}{b}\rfloor\) 可以用整除分块处理。
  37. 容斥如果正着不好做可以考虑补集
  38. 两个序列判断它们是否在无限拼接后相遇只用看它们对两个序列长度的最大公约数取模是否相同即可。
  39. 在推式子之前如果不好推先看看有没有规律,有的时候找到规律再去证明更简单。
  40. 对于某种求存在的方案数可以转成全部情况减钦定不存在
  41. 第一题和第二题难度大概是差不多的,所以第一题可能比第二题难,第一题想0.5h后如果没有思路那么就先去看第二题,并且不断暗示自己第一题做不出来的大部分时候别人也做不出来。
  42. 代码非常耗时,有思路就先继续想,不要会一个暴力就写。
  43. 注意思维深度,如果始终没有想出来那么就要学会放弃自己之前的思路。大概就是最开始的时候就想歪了。
  44. 在想到了一个看起来很恶心但是可做的时候不如再稍微想一想能不能做/有没有简便做法,如果写一半想到了就会很浪费时间。
  45. 大样例只有一个或没有时必须检查代码。
  46. 在知道比可能的正解多一个 \(\log\) 时要先预估一下常数再去写代码。
  47. 想题之前先玩玩样例防止想偏。
  48. 对于单一的加/删元素如果难做可以考虑时光倒流改成删/加来思考
  49. 没有过样例发现不对先别急着否定自己,说不定想想就出来了。
  50. 思维/构造题怎么想不出来(感觉不可做)要勇于放弃去用看起来有用的性质,清空大脑来想想别的性质。
  51. 尽最大可能避免写完发现假了。
  52. 逆序对个数是 \(\mathcal{O}(n^2)\) 级别,一定注意开 long long。
  53. 你的暴力不一定是对的。
  54. 得到分的程序不代表有前途得到更多分。
posted @ 2025-11-15 12:30  tanghg  阅读(80)  评论(0)    收藏  举报