故事

取 名 为 故 事,因 为 已 逝,因为有未来

dsak与数位dp八字不合,写一遍挂一遍,调啊调。

置顶系:

  • 比赛的时候最好还是把输入输出格式仔细读一遍,再看一下输入输出或者手推一下,这样可以加强对格式的印象,避免格式错误。手推样例能一定程度上避免读错(或理解错)题。
  • 写完代码还是检查一下,特别是要取模的题,看有没有漏掉的地方
  • 写爆搜的时候,可能会用到全局数组存值,但是这个数组不能有过多的操作,因为那样数组就改变了,然后回溯的时候就出问题。
  • 数组越界会乱跳,注意特判。
  • 一眼斜率优化的题,还可能针对斜率优化(CSP会这么毒瘤的吗?)
  • 从x到y,再从y到z的费用和什么的,y点费用会重复计算,尤其这个费用是预处理的时候,需要注意。
  • 容斥bug,关于那个函数,容斥有时候是减法,不能当加法写,最后要把答案变成正整数
  • 组合数如果数据范围小,可以用杨辉三角递推求解(好写好调,不用关心模数,逆元)

错误&问题(比较zz的错误):

  1. n*m<=…,不要开根号…
  2. 读入要写读入优化(也许)
  3. 数组开小
  4. 文件名打错
  5. 重边
  6. 没有开long long
  7. 树状数组不能用0会死循环,边界什么的;
  8. 局部变量初值,以及最大最小值得初值;
  9. lld写成d
  10. 打表忘删
  11. 题目看错
  12. 思考方向错误(绝望。。。)
  13. 心态要稳(瞎猜结论要狠??)
  14. 有递归的时候有些变量要定局部,不然等它递归回来,值就改变了
  15. 最小值初值还是炸了
  16. long long 1e18以内的都可以处理,快速乘其实很慢
  17. 运算符优先级(位运算优先级极低,甚至低于比较符),位运算最好写括号
  18. 无向图自环连一条边即可,度数算1
  19. i,j写反…
  20. 大写小写字母写反
  21. 数据范围少看了一个0
  22. 复制粘贴细节没有改
  23. 顺逆时针??园转区间细节
  24. 注意是双向边还是有向边

技巧:

  1. 一定代价可以取得的最大价值转化为取得一定价值所需最小代价,二分搞一下。
  2. 题目抽象化?
  3. xor的东西拆成每一位来算
  4. n>=m,n*m<=…,可以确定m的数据范围(一般会比较小)
  5. 建图的时候,一个点的信息是两维,但是这种点数并不多,用map离散化压成一位即可(这样做的前提是,建完图后,点的信息就无用了)
  6. 求满足xxxx条件的区间数,可以考虑分治
  7. 求选k个数,这k个数的最大公约数最大是多少,考虑枚举最大公约数,判它的倍数个数是否有k个即可,复杂度约O(N ln N),N为值域大小
  8. 有些题目,看着像结论题或者什么的,想不出来,可以先写暴力,也许会得到些许启发(或者发现就是个暴力的优化)
  9. 时间复杂度和空间复杂度的计算。看似暴力的东西不一定真的暴力。
  10. 无环图的连通块个数=点数-边数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值