NOIP模拟赛套路技巧经验总结

前言

还有2天就NOIP了,之前做了这么多场模拟赛,是时候拿出来总结一下,

算是给自己一针强心剂。

列表

从最近的考试总结起(个人认为的重点,可能有重复,仅供参考):

转化很重要,一定要简化问题过后再找性质!

  1. DAG转拓扑序列,变成序列问题
  2. 无向图转生成树+非树边求解;
  3. 题面敏感,按 [ 2 t , 2 t + 1 ) [2^t,2^{t+1}) [2t,2t+1) 倍增分组;
  4. 区间最值问题,常用:单调队列/栈,最终手段:笛卡尔树
  5. 限制复杂,指数暴力不可过,考虑网络流
  6. 状态转移转化为点/边,原问题转化图论
  7. 矩阵行列特殊限制,一般转二分图
  8. 异或题常用手段:拆位
  9. 选数依赖,买卖问题,反悔贪心
  10. 无向图路径/连通块有点权、边权最值限制,最佳选择:重构树
  11. 无向图暴力三元环计数,个数是 m m m\sqrt{m} mm 级别;
  12. 二分答案转判定性问题(这个太关键了!可我总是记不起来!);
  13. 贡献为 x 2 x^2 x2 形式,可以转化为 2 ( x 2 ) + x 2{x\choose2}+x 2(2x)+x,求任意两点之间的贡献;
  14. 矩阵行列式:对于排列中的一个环,逆序对的奇偶性与环长相反,所以系数为 ( − 1 ) 环 长 − 1 (-1)^{环长-1} (1)1(可用在毒瘤的邻接矩阵行列式中);
  15. NIM-K问题结论:每次最多拿 m m m 堆石子,当前状态必败,当且仅当每堆石子数转换成二进制后,每位1的个数   m o d   ( m + 1 ) = 0 \bmod (m+1)=0 mod(m+1)=0
  16. 数学题中出现整除符号,一般可以整除分块
  17. 二项式转组合数问题;
  18. 各种单调性(栽在这里至少2次了),一定要尽可能全部用上;
  19. (CSP-ST4)平面图最小割问题,转化为最短路问题求解;
  20. 贡献为 x 2 x^2 x2 形式的另一个技巧: ( x 2 − ( x − 1 ) 2 ) (x^2-(x-1)^2) (x2(x1)2) 差分,算最小贡献不影响(两次看到费用流的题用这个技巧);
  21. 算组合数时很容易忽略的点:参数大于等于模数,需要用卢卡斯定理;模数不为质数,需要对模数分解质因数计算(或者递推);
  22. 序列计数有一些相邻元素的限制时,考虑连续段DP
  23. 所有点同时移动求最短时间一类,用二分答案会简单很多;

妙到家的改变定义法:

  1. n n n 个点连续出现 ⇔ \Leftrightarrow 相邻点对数为 n − 1 n-1 n1
  2. 若干区间取并后两区间的间隙 ⇔ \Leftrightarrow 被0个区间覆盖的位置 ⇒ \Rightarrow 区间覆盖数最小的位置;
  3. 平面中的黑点恰好形成矩形 ⇔ \Leftrightarrow 含奇数个黑点的2×2矩形数量恰好达到最小4个;
  4. 对于有单调性的序列计数题,转换为差分定义计数;

代码坑点:

  1. v e c t o r \rm vector vector 数组遍历一定不要用for(auto x:Array),这样遍历是以“只读模式”遍历的,会把数组里面每个元素复制一遍,所以即使你的操作只会访问每个元素的一小部分,却相当于访问完了,这会让你以为正确的复杂度超时。用for(auto &x:Array)或手动遍历就不会出现这种问题。
  2. 除非模拟和复杂函数需要,尽量不用 v e c t o r \rm vector vector,因为即使是调用一次 s i z e ( ) size() size() 函数也慢得离谱;
  3. 很多题目中只需要用到优先队列,就不要总是用 m a p \rm map map s e t \rm set set!这是 5 ∼ 10 5\sim 10 510 倍常数的区别!
  4. y1,y0,yn,j1,j0,jn这些变量不能用!用了就CE!实在想用的,可以加宏定义,比如#define y0 y23333

策略:

  1. 先把所有题通看一遍,大概想一下思路;
  2. 除非第一题特别难,还是先做第一题;
  3. 后三道挑一道最简单的做;
  4. 如果30分钟想不出剩下任何一道题的正解,挑骗分性价比最高的拿部分分;
  5. 至少留40分钟检查。

(2021.11.19.20:00前持续更新)

后记(2022.11.23)

过一年了发现居然还有人在收藏这篇,我认为有必要提醒一下:

本人去年NOIP考得像坨💩,连省一都没有,建议别把上面的套路当回事

后来发现还是要认真研究问题模型和知识点,只总结表面套路就想达到神奇效果一劳永逸是错误的!

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值