• 各类常犯的错误总结


    1. 空间开小或开爆
    2. 求和忘记开(long~long)
    3. 有些只在函数里用的STL就尽量开在函数里,容易忘记清空
    4. 数字之间异或的时候有可能会超过原本的值域范围
    5. 需要维护区间和的线段树中,凡是和线段树的点值有关的变量都要开(long~long)
    6. 在离散化的时候,不要把原序列长度和离散化之后的长度搞混
    7. 在二分的时候,如果当前已经能够确定是否满足条件,就要及时(return) 不然鬼晓得会爆成什么鬼样子
    8. 不要怀疑一些算法的必要性,不要总想着发明一些新的算法
    9. 注意仙人掌是缩点双,仙人球才是缩边双
    10. 注意看题要不要判无解
    11. 注意一定要仔细看清题再打
    12. (tarjan)(vis)标记要打在处理询问之前
    13. 线段树合并的时候,忘记把(merge)函数的返回值赋给(rt[now])
    14. 不要开一些(vector)数量大于元素数量的多维(vector)
    15. 造极限数据的时候不要只生成刚好和极限一样的数据,试了一组极限数据之后要把(gen)改成在极限附近波动
    16. 记住一定要按(F12)
    17. 不要乱开什么容斥期望题
    18. 考试的时候去做难题的时候一定要先拿稳简单题的分(联赛再次吃亏)
    19. 方便打(gen)和细节多的题一定要拍,查细节错误可以小数据对拍
    20. 分块的时候不要忘了特殊处理操作在一个块内部的情况
    21. 有时候开多棵线段树的常数太大,可以把他们合成一颗线段树维护多个值
    22. 注意输入的序列长度是(n)还是(2 imes n)
    23. 注意考试结束之前要检查数据分治是否正确
    24. 注意循环变量不要重复
    25. 注意多组数据要检查是否清空
    26. 一定要注意模数
    27. 在测试部分分的时候,要把暴力去掉
    28. 在对(long~long)取模的时候,要先模再加再模
    29. 在使用(string)类的时候,要注意操作位置的范围,防止(MLE)
    30. 注意有多组数据测试的时候,数组尽量都清空,不然有可能会出现什么奇奇怪怪的错误
    31. 注意保证(sum)的题,每次只要清空到当前的范围就可以,不然有可能会T
    32. 注意小数据是否要特判
    33. 注意(floyd)对于重边要(chkmin)
    34. 一定要注意给的图是有向图还是无向图
    35. __builtin_ctz最好写成(x ? __builtin_ctz(x) : 32),不然可能会出事
  • 相关阅读:
    WM_COMMAND 和 WM_NOTIFY 的区别
    C 游戏所要看的书
    Source Insight中文字体设置
    在 windows7 中使用 vs2003 时,“在文件中查找”导致无响应的问题
    解决VS2008 调试启动特别慢
    c++ 浅谈 new 的使用
    Access界面基础操作
    与孩子一起学编程12章
    YT工作日志-0911
    两种方式遍历二叉树--递归方式和非递归方式
  • 原文地址:https://www.cnblogs.com/xunzhen/p/9719217.html
Copyright © 2020-2023  润新知