• 总结各类错误(always online)


    最近发现打暴力(还有梦想中的正解)都会打错,决定好好总结一下各种坑比错误QAQ

    1. 一定要好好看数据范围,接近int类型上限,如果要求和,一定要开long long并且改大你的inf值(TAT暴力分流失)
    2. 提交之前,好好看看你的输出,有没有少或者多,并且检查格式错误。
    3. 对于后面的点,如果要混分的话,一定要注意数组的大小!!!(NOI2017同步赛和8.4的都少了10分QAQ)(NOI2018同步赛又少了 20 分,以后不要怂空间直接大力开数组就行啦)
    4. (Floyd)的循环一定要记得 (*k) 一定要在最外层!!!
    5. 一定要认真读题,看看是要输出第一个还是要输出几个答案!!!
    6. 一定要多测几组数据,而且要反常规的数据!
    7. 一定要删掉调试信息,最后10分钟编译一下,测下样例!
    8. 拓扑排序一定要从入度为0的点进去!Tarjan缩点(强连通分量)一定是有向图!!
    9. 有时候实在想不到(dp)就去做贪心算了!
    10. 费用流建反向弧的时候一定要记住,费用为相反数,流量为0!
    11. (Splay)查找第(k)大的时候,一定要记得先减,在向下走,不然会减下面的!!!
    12. (Splay)查找第(k)大的时候,一定要记得先下放标签啊!!!各种没有先(Splay)的东西,都要(push down)啊!!!
    13. (Treap)删除的时候,递归下去,走的应该是 ch[u][d^1] ,自己被旋到另外一个地方了!!(很容易错!)而且删除的时候,找到一样的值就return
    14. (FFT)蝴蝶变换那里,奇数项 ( imes x)!!!
    15. 莫队带修的时候,一定要注意之前的Old状态!!!
    16. LCT中的rotate判断!is_root(u)之前一定不能连接u-v的边,不然会判错,而且不是判!is_root(t)!!!
    17. 线段树一定要记得 push_downpush_up !!!
    18. 线段树中的 query 中的 res 注意看要不要开 long long !!!
    19. 检查数组有没有越界的话一定不能开 (O2) 测一遍 开 (O2) 数组越界不会显示 (RE) 会显示 (WA) 开不开 (O2) 都试一遍!!!!
    20. LCT 更改单点值时候 一定要记得把它放在根上 不然答案会错!!!!
    21. 关于概率中 , (1 - p[i]) 这个概率计算时候 不要写成 (Mod - p[i]) !!!
    22. 捆绑测试之类的题需要注意小数据情况!!!例如 (n=1,2,3) !!!
    23. 仔细思考所有可能爆 long long or int 的地方!!(NOI2018 同步赛又丢了 (15pts)要算下所有中间结果大小!!!
    24. 函数传变量一定要传完,有时候在函数定义那预处理初值不是好习惯啊!!
    25. 强制在线的题一定要注意 (ans) 是否赋值!!!
    26. (calm down) 记得算空间和检查数组和变量越界以及多组数据!!!(次次模拟赛挂分)
    27. 多组数据记得清除前后缀和!!!!
  • 相关阅读:
    STRIDE威胁分析与DREAD威胁评价
    HashMap 几大问题
    java 集合中的错误检测机制
    科创人·StreamNative翟佳:开源模式价值为王,基础软件的未来在国内社区
    科创人·云柚智能CEO汤峥嵘:价值观一致奠定共事基础,技术创新加速行业变革
    科创人·微软中国CTO韦青:数智时代创业得跳下巨人肩膀,还需掌握基础知识和逻辑能力
    科创人研习社·微智云CEO 张虎:从CTO到创始人关键是扩大视野半径
    科创人·天云数据CEO雷涛:打造正确理解数智的认知体系
    neovim环境与vim简单使用
    MIT6.828——Lab3 PartA(麻省理工操作系统实验)
  • 原文地址:https://www.cnblogs.com/zjp-shadow/p/7287392.html
Copyright © 2020-2023  润新知