通常比赛的第一名有700多分,如果要进队,则至少要500分,这意味着GDOI前两场每场要200,GDSOI要100才能够达到上述的目标。
可现实是怎么样的?做了2套跟GDOI难度相仿的题之后……
这两轮的模拟很能说明事。用大数据说话。下面我会将每题涉及的知识点以及比赛的时候完成的具体情况写出来。
下面是第一轮模拟的具体情况。
知识点 | 估分 | 实际得分 | 比赛中 | 出现的问题 | |
Day1 | 基于DFS序的背包(裸) | 100 | 85 | 9点前打完拍完 | 没检查 |
Day1 | 中序遍历/LCT | 30 | 30 | 9点到9:45左右 | 漏考虑x的祖先的子 |
Day1 | 杜教筛 | 20 | 20 | 随便打个暴力 | 莫比乌斯反演知识不够熟 |
Day1 | DP+容斥+二项式反演 | 60 | 50 | 在优化上花了不少的时间 | 没将sum的式子用g表示 |
Day2 | SAM+树链剖分 | 0 | 0 | 最后15分钟开始打 | 暴力没打完 |
Day2 | 生成函数+FFT | 13 | 13 | 直接打个暴力,10分钟 | |
Day2 | DP+哈希 | 15 | 15 | 推DP推了很久,最后不得不打了暴力 | 不会将路径分段 |
Day2 | 字符串→图论 | 30 | 15 | 花了15分钟,只想出了n=1 | 数组开小了 |
SOI | 网络流 | 44 | 25 | n=20急中生智 | 没将路径上选与不选 |
SOI | μ函数和按秩合并 | 5 | 5 | 约11:00-11:25 | 只考虑如何不选gcd≠1的路径 |
SOI | 思维题&前缀和优化 | 20 | 20 | 随便打个暴力 | 没有成功地想到(i,j)与 |
SOI | DP | - | - | 感觉上转移有点复杂就没想 |
从红色字体可以看出,往往就是有这么一些不该丢分的。不就是几个字符吗?!
但是,检查也很难检查。
①打题打了这么久,往往有注意力不这么集中的时候。这个时候是最容易打错字符的。
②对于数组开小了:图论的边集数组,直接输出tot看看,动态开点的线段树,输出gs。其他的,就检查一下#define的n。
对于DP:
①设的状态如果不太可能转移,弃。
②优化?将【前缀和的优化】的式子写出来,不至于对着电脑调这么久。
对于思维含量较大的:
①如果事物明显有分集的,并且问题做起来很棘手,考虑用网络流最小割模型的割表示决策。
②如果题目问的是多重限制下的合法点对数量,有这么几种解决的方案:
考虑容斥,涉及GCD的可以考虑莫比乌斯函数。计算不满足那些限制的点对。
考虑点对是二元组,可以转化成二维的东西(下面讲)。
下面是第二轮模拟的具体情况。
Day1 | 凸壳+链表 | 100 | 70 | 调了一个多小时 | 链表的实际意义没 |
Day1 | 博弈题 | - | - | 不会打博弈的暴力,弃 | |
Day1 | 图论DP | 40 | 30 | 随便打个暴力 | 没检查 |
Day1 | DP+NTT | 11 | 11 | 最后10分钟推出数论 | 没想出DP,n=1的只能 |
Day2 | 不满足二分性 | - | 60 | 9:20打了个二分 | 其实是知道的,但是这就不会了 |
Day2 | 多重限制→ | 67 | 42 | 不知道set内操作一次是O(log)的 | |
Day2 | 博弈题 | - | - | 不会打博弈的暴力,弃 | |
Day2 | 生成函数& | 20 | 0 | 10:55-11:05打完 | 没检查 |
SOI | Nim/SG函数 | 11 | 4 | 想到什么写什么 | 心态崩了 |
SOI | 数位(二进制)DP或暴力 | 13 | 13 | 心里很浮躁,显然的暴力没打完 | 心态崩了,x和y应该考虑 |
SOI | 洲阁筛 | 20 | 20 | 随便打个暴力 | 这是数论里面的基本功,我却没学 |
SOI | 虚数 | 40 | 10 | 想到什么写什么,细节没拍 | 心态崩了 |
从这些知识点的出现情况来看,生成函数出现得不少,所以FFT一定是基本功。
博弈题的暴力真不会打,所以学会这招之后水平一定提高。
我还不会打LCT呢,打得很不熟,这可怎么办?
现在只能将能消化的消化好,反正明年还有一年呢。
①保证能拿的分拿齐,该拍的部分分顽强地出数据拍好,已经是最大的胜利了。
②接上面的话题,说一下【考虑点对是二元组,可以转化成二维的东西】。
一个相同颜色的点对的限制可以转化成与子树相关的连续的dfs序的问题。相当于将很多个矩形涂黑。然后算白格的数量。
③对于那些实在推不出来的数论,不要推了,打表找规律吧,很可能有分的。
如何应对GDOI第三轮模拟?
一般采用看完4道题再去想第一题的策略,这样能够避免着急打简单的题,但又因未深思熟虑而卡住的情况。
心态,如果浮躁了一点,那么这个时候停下一分钟,什么也不想,让状态恢复起来。
最后10分钟再检查代码。