「杂录」CQOI 2018 背板记
背景
经过一天天的等待,终于迎来了CQOI2018CQOI2018,想想NOIpNOIp过后到现在,已经有了快要半年了,曾经遥遥无期,没想到时间一转眼就过去了……
日志
Day0Day0
因为明天就要考试了,早上来了一发模拟考,考得心态炸裂……不过横向对比了一下,同校的同学考得也差不多的样子,所以还算是有一点安慰吧……(什么,你问我具体分数?)
下午去试机,发现GUIDEGUIDE用不起,所以只能用CodeBlocksCodeBlocks,然后对字符串心虚的我决定打一发后缀数组,然后果然啊,错误连篇……我是不是该滚粗了……然后同校dalaodalao过来一眼秒掉错误,orzorz狂膜JeremyGuoJeremyGuo巨佬。果然我这种后缀数组不会打的人只有被虐啊……
晚上看了一下网络流和线段树,根据CQOICQOI的套路肯定会考的吧……
Day1Day1
考试前喝了半瓶咖啡,然后就进考场,发现CC盘竟然也解封了,然而并没有什么用……写了一个自动生成对拍程序的程序放着。
然后发了奇怪的密码NOI2018cq-cs
,让我吓得以为和湖南联考(不过湖南好像很早就省选完了),结果只是由于NOINOI在长沙而已。然后就是读题了……
先看t1t1,这……不是BSGSBSGS的模板题吗?上个星期才学会的……好好好很可做!
再看t2t2,数有向图中有多少棵以11为根的树,不会orzorz……
又看t3t3,这不就整个一个组合数学吗?预处理组合数,LucasLucas定理,快速幂一顿乱搞就好
了……再看复杂度,n=107,a=45n=107,a=45,时限1s1s,跑O(nloga)O(nloga)怕不是卡常数神题。
然后考虑了一下决定打t1t1,很快就调出来了,但是心虚……于是就开始对拍,然后去想t2t2。
想了一会儿,还是没有思路。于是就看准了n≤10n≤10的数据点打了一个状态压缩DPDP,细节挺多的,很虚……不过测了完全图之类的特殊情况,答案都正确所以还是比较放心。此时t1t1已经快拍了1W1W组了,没有错误于是很放心地关掉了对拍(flag!!!)(flag!!!)。
然后t3t3想想还是写了组合数学,代码巨短让我很怀疑,一测果然时间爆炸……经过奥妙的卡常数底层优化,还是只能优化到1.5s1.5s。这个时候真的很想裱出题人,只有两个分数段30pts30pts和100pts100pts,30pts30pts是O(2n)O(2n)枚举都可以过的,O(nloga)O(nloga)就算不是正解,掉到暴力分也是让人醉了。
考试结束前30min30min,检查了一下代码,没有什么低级错误,然后就结束了。
(交流后得知t2t2是矩阵树板题……orzorz有两道模板……)
下午回家浪了一波,又复习了一下网络流和字符串(毕竟今天没有考……)
Day2Day2
把昨天没喝完的咖啡喝完了进去(节约从我做起)。
跟昨天一样,CC盘解封了,并且昨天的题目和程序都还在(这是什么鬼)。
扫了一眼t1t1,秒掉——状压DP+DP+卡常……不过安卓的屏幕手势真的很有趣……
然后看t2t2,九连环?糟了我忘了格雷码了……等等,这题可以找规律?再等等,n≤105n≤105?竟然考高精度?还多组数据?心里赶紧想了一个压位卡常,把3030次递推转化成11次的暴力,恩,复杂度差不多……吗?
最后看了看t3t3,emmmmmmmemmmmmmm,搞个前缀异或和,就是在查询某个区间内某一个数出现的次数……诶,这不是莫队吗?还是一道做过的原题?出题人怕不是在逗我?连数据范围都没改?然后猛然回头,这两天都做了什么题?
一道BSGSBSGS的模板题,一道MatrixTreeMatrixTree的模板题,一道莫队模板题,一道无脑DPDP,一道高精度(不要问我d1t3d1t3)……这不是NOIpNOIp难度吗……字符串、网络流去了哪里?
秒掉33道题之后想要裱出题人,但还是冷静地先把t1t1和t3t3解决了……然后拍了一下t3t3,没有什么状况,时间也可以过(O(n√n)O(n√n)还很快呢……)。
t2t2打完之后疯狂卡常,还是和昨天一样,只能卡到1.3s1.3s。(╯‵□′)╯︵┻━┻
没办法,只能老老实实写FFTFFT快速幂了……最后10min10min调出来,好在其他两题已经检查过了。
小插曲:发现自己昨天的对拍程序和数据生成器,发现没有设随机数种子!!!也就是说,拍了1W1W组和没拍差不多……
下午吃完饭后等成绩,出来后是70+30+45+100+100+10070+30+45+100+100+100,非常惊讶,看来BSGSBSGS果然挂了。由于考得太水了,好多人都是500+500+,NOIpNOIp挂掉的我自然不可能进队……不过明年还有机会的,要加油!
Day3Day3
回学校了,上语文课讲《边城》,里面有个人叫大佬,不管是书名还是人名都好喜感的233233。
题目及题解
d1t1d1t1
-
题目
给定P,gP,g,gg是质数PP的一个原根。再给定A≡ga(modP),B≡gb(modP)A≡ga(modP),B≡gb(modP),求gabmodPgabmodP,其中P,A,B<231,g≤20P,A,B<231,g≤20。 -
知识补充
BSGSBSGS,全称Baby−Step−Giant−StepBaby−Step−Giant−Step,也叫大步小步算法。专门解决求令ax≡b(modm)ax≡b(modm)的最小xx,在扩展BSGSBSGS中,甚至不需要a,ma,m互质,当然互质肯定更好写。 -
题解
辣鸡出题人,竟然出这样的模板题!连exex都不带的!只要用BSGSBSGS求出a,ba,b,直接快速幂计算即可……
d1t2d1t2
- 题目
给定一个有向图,求里面有多少个11为根的树。其中节点数小于等于250250,无重边和自环。 - 知识补充
MatrixTreeMatrixTree定理,有向图的入数矩阵减去邻接矩阵,去掉第ii行和第ii列,行列式求值即为以ii为根的树形图个数。 - 题解
裸题还需要讲吗?所以这道题没有做出来还是知识缺乏的缘故……但是出这样一道模板题真的好吗?不会的选手不可能想出来,会的选手一打就ACAC,不考思维,只考背板能力,不知道出题人怎么想的。
d1t3d1t3
- 题目
一个0101串为交错序列,当且仅当没有两个11相邻。一个交错序列的权值为xaybxayb,xx为11的个数,yy为00的个数,a,ba,b为给定的数(注意假定00=100=1)。求所有长度为nn的交错序列的权值和对一个质数mm取余,其中n≤107、a,b≤45、m≤108。 - 知识补充
然而还并不会做 - 题解
然而还并不会做
d2t1
- 题目
求有n<20个解锁点的安卓手机解锁手势方案数。n个点的坐标全都告诉你了,一个手势合法必须满足:
- 不少于4个点
- 连线必须是直线
- 不能跨过未经过的点
- 不能走到已经经过的点,但是可以跨过(相信用过解锁手势的同学更容易理解)
- 知识补充
然而并没有什么要补充的 - 题解
状态压缩DP一眼题,预处理两点间线段上的其他点即可,不多说。
d2t2
- 题目
求最少需要多少步才能拆下n连环,其中n≤105
不明白什么是n连环请百度搜索9连环
- 知识补充
然而并没有什么要补充的 - 题解
推出公式ansi=2⋅ansi−1+(i%2)
然后高精度快速幂,用FFT优化乘法即可(然而卡常,不过一般都可以过)
d2t3
- 题目
给定n,k,以及数组a1...n,有q个询问,每次询问li到ri间有多少组x≤y满足ax到ay的异或和为k,所有数都小于等于105。 - 知识补充
莫队算法,请自行出门百度,不好讲…… - 题解
搞一个前缀异或和,就变成了查询某一段区间中有哪两个数异或起来为k,直接莫队硬上即可。
总结
对比赛
总的来说,这场CQOI2018就像是模板题大赛一样,竟然比CQOI2016还要模板……可以拿给学弟学妹们刷模板题……
并强烈吐槽出题人。
-
不开O2跑FFT就是耍流氓
-
卡常数题目1s时限就是耍流氓
-
模板题一坨就是耍流氓
-
子任务只有0,30,100就是耍流氓
-
O(nlogn)与O(2n)无区分度就是耍流氓
对队友
这一次我们学校一共有5个高二,2个高一,1个初三还有1个初二的参加——就是我……除了高二的4位大佬进队,其他全体阵亡……最可惜的是我们学校现在最厉害的女选手YuKi,苦苦学了3年的竞赛,成绩稳定,虽比不上四位大佬,但是每次比赛都可以得到高分,尤其在雅礼集训时。这一次也是失误极少,但是由于有道模板题没有学过,直接阵亡,另外Kyle同学差个几十分就可以进队了,还是很可惜。
对自己
这次虽然是一场模板题检测,但是还是觉得不够理想……矩阵树定理是曾经看过的(学莫比乌斯反演翻书的时候),但是一直都没有认真看过博客,连矩阵树是拿来干嘛的都不知道。包括BSGS,得到70pts多半是map被卡常了(或许?不过自己跑确实是920ms左右),嫌累,偷懒,然后就出锅了……
不过,也许这一次我还有一些不足,但我确实是真真正正地从一位NOIp选手走过来了。我这半年的时光并没有白白流失,因为在这半年里,我真切地感受到了自己的成长。或许有过迷惘,或许有过失落,也有过AC的欣喜,有过终于把一道题调过了的满足。我想,虽然没有进队,但是这一路上伙伴的言语,自己的进步,都在告诉我:我的努力没有白费。OI的路,我还要走下去,并且脚步愈来愈坚定。
虽然感觉CQOI出的题都太naive了,但是依然没有AK,相比之下,四位学长都取得了很好的成绩。所以,我毕竟还是修炼不够呢……还是希望能够坚持下去,不畏困难。毕竟是自己选的路,跪着也一定要走完。
毕竟,来日方长。
作者:ModestStarlight
出处:http://www.cnblogs.com/ModestStarlight/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何统计不同电话号码的个数?—位图法
· C#高性能开发之类型系统:从 C# 7.0 到 C# 14 的类型系统演进全景
· 从零实现富文本编辑器#3-基于Delta的线性数据结构模型
· 记一次 .NET某旅行社酒店管理系统 卡死分析
· 长文讲解 MCP 和案例实战
· 基于Blazor实现的运输信息管理系统
· 微信支付功能的设计实现与关键实践(UniApp+Java)全代码
· 用c#从头写一个AI agent,实现企业内部自然语言数据统计分析
· 三维装箱问题(3D Bin Packing Problem, 3D-BPP)
· MCP协议Streamable HTTP