HAOI2018游记
前言
很懒。
太懒了。
不仅懒得写题。。连游记都懒得写。。
花点时间填一下坑吧。。不过话说我去年的NOI/APIO/CTSC游记也没写。。
省选前
板子好像一早就打完了,没什么可干的。
也不愿意开新题,学新东西更是不可能的了。就每天打打GTA和CR才维持的了生活这样子。
还是有点慌的,HAOI会出什么样的锅?被退役了怎么办?
平时我的考试策略已经非常保守了,决定这次采用更保守的。
除了一眼秒掉又好写的题,其他题只写暴力,不管正解。
省选这个东西嘛。。进队才是最重要的。像去年一样,在HA随便打打暴力就进队了,今年就干脆把暴力分拿稳,队长什么的,不去考虑了。万一写了正解又是和暴力分一样怎么办?
考试日,上午
去年的NOI教会我什么叫“心态第一”,决定这次按照自己的方法调整心态,只要心态不爆炸,最后1min翻盘都是可能的。
早上8:30开考,窝故意迟到了两分钟,然后一脸淡定地进场。
家长和教练等的很着急,教练不停地给我打电话我也没听见这样子。。估计都快急疯了吧qwq。
算起来省选时间很紧,只有3.5h,根本没时间考虑什么正解啊喂。。。搞得像NOIp一样,题又这么难,怎么可能写正解啊?
先看题,算暴力分。
T1
嗯?背包?NTT?
显然不是啊。。。
指数级枚举好像有40分,先看看。
感觉有点像数论,和gcd有关的东西吧?
是不是把裴蜀定理拓展一下啊?取所有数的gcd?(瞎猜结论)
(大力证明中。。。)
算了。。对于两个数来说是对的,那应该没问题吧?
40pts到手
T2
这个题和CF某个题很像啊?是不是随便构一个生成树出来然后选择一条路径反转啊?
假的啊显然不是。(脑抽ing)
还是打暴力吧qaq。
考虑70分,对每一个点列一个xor方程,直接用bitset解方程组就可以做辣~
咦好像要询问多次?每个点删掉之后询问一遍?
套个分治叭,感觉过不了,不过60分还是没问题的叭qwq。(脑抽ing)
60pts到手
T3
这串串题怎么一脸不可做的样子啊?
先套个SAM,然后?然后?然后咋办啊qaq?
算了还是30分暴力吧。。平方求LCP也是很好写的,就不用写SA了。
不过这数据范围这么鬼畜。。是不是低复杂度暴力能水不少分啊?
如果有时间就写写SA吧,不过T2的分治码量这么大应该是没时间了。。
30pts到手
这样算下来有40+60+30=130pts,感觉还是凑合的,队长是没戏了,进队应该绰绰有余吧?
开始写。
T1
写完了40分暴力,过了大样例,结论应该没问题。
想想后面的分数?能不能DP?
选取子集的问题怎么DP啊?肯定有高妙的做法。(脑抽ing)
还剩2h
T2
2h的话应该足够写完调完线段树分治+线性基了吧?
要不然这个题怎么写。。我这个思路除了这一档根本没什么分啊?
硬刚吧。。。
(30min后)
好像真的和CF那个题是一样的。。确实反转路径就可以了啊?
我刚刚在想什么啊。。。怎么肥四啊。。。
那这个题不是BFS就没了?线性的?
噢还有多次询问啊,那继续套分治+并查集,果然还是有log的。
这个并查集维护的东西有点多啊。。现在只有1.5h了。。就算1h写完也不一定调出来啊?
这样算起来70pts的平方暴力还是很好写的,n遍BFS就可以了。
过了大样例,70pts到手。
T3
大概还剩20min,不写SA了吧,这做法细节好多的啊?
很快写完了平方暴力。拿到30pts。
然后延长30min。。。
要是早知道延长30min我就写T2正解了啊喂!
还剩40min,搜刮一下其他的分数。
T1
噢好像确实可以DP。。。我刚刚怎么回事啊?
不过DP的话要把当前的gcd压进状态里面,复杂度O(np),有60分了。
可以把p的因子都取出来,不过写map要多一个log,还有点复杂,时间不够了算了吧。
最后还有个p=998244353白送的10分。
这样T1就有70pts了,拍了一下没问题。
T2
就剩5min了。。慌慌张张去拍T2。
先写了个指数暴力,又写了个数据生成器。
生成器写起来有点麻烦。。因为不能有重边自环什么的。。不过这个对我的程序没影响吧?
这时候考试刚刚结束。。赶快拍!
WA。
???我大样例都过了啊?
再拍!
TLE,死循环了。
??????咋回事啊????
看了一眼数据,好像是有重边自环的点我挂了。不过我的程序不是能处理重边自环吗?
算了。。70变0。。。出考场了。。
考试日,中午
这样算下来只有70+0+30=100pts,还是挺危险的吧?
下午打稳暴力就好了。
imone说他前两题都会做,T3写了SA的低复杂度暴力,不知道能骗多少分。
“至少有60吧?”我奶他一口。
“那你上午就有260了,tql!”我又奶他一口。
吃饭的时候心态爆炸。。脑子飞速运转,考虑T2到底怎么挂的。
后来终于考虑明白了。。我的程序在处理重边自环的时候确实会出错。。
而且根据我上午的输出来看,错的符合我的预期,那应该是没问题了。
即使是这样,imone还是吊打我90分啊?
Mike安慰我,让我下午翻回来,虽然我知道不可能,但还是答应了。
听有人说T1是什么莫比乌斯函数。。好像有点道理啊?为啥我想起来因数的时候就没往这方面想啊?
考试日,下午
和去年一样,到场还没开考,上午的东西没删,先拍上午T2。
(我去年也是到考场之后先拍上午T2 qwq)
没问题了,放心了。
开考,看暴力。
T1
这个题意。。这个范围。。。
除了平方DP还有什么做法啊?
而且似乎除了平方DP,也没什么做法能拿分了啊?
三次方怎么写啊?这数据范围是搞笑的吧?
除了100分就是20分,而且这20分的暴力还这么难写,当然是写100分。
虽然我很不擅长数数,但是就是要硬刚。
硬刚之前看一下T2叭qwq。
T2
yql给我讲过一个类似的题,这种题都和w[k]没关系的,肯定是先对于每个k算出来之后再乘w[k]。
所以我先枚举k,然后怎么组合一下?
怎么组合啊,好难难啊QAQ?
这个模数有点奇怪啊?是不是NTT模数啊?
果然是。。这要么是烟雾弹,要么真的是多项式。
生成函数?假的吧?
脑子好乱,不会,告辞。
基本确定了策略,先去猛刚T1,然后来T2随便拿一点暴力分。
顿时慌了。。这T1要是刚不出来,基本上下午就爆零了。
不过数数也没几个人擅长吧?估计大家都是一丁点分数。
T1
推了好久式子,没任何进展。
本来是16:30结束,我记成了16:00结束,慌的一批。
不敢乱猜式子,很可能猜过了样例就FST。
只希望做完这个题之后还能给我留0.5h写T2暴力。
搞了半天,搞出来一个式子,过不了小样例。
手算了一波,发现真的过不了,就开始对着样例调系数。
瞎换了一波系数就过了大样例。。。
顿时感觉栋栋挺真的,他当时给我讲《51nod 排列合并机》的时候,就说是自己瞎换了一波系数就过了,原来这种操作真的存在。
数数题过了大样例拿头FST啊,肯定AC了啊。
一看表发现离比赛开始才过了50min,十分舒爽,本来这个题预计2h做完的。
就好像打CF Simulator的时候,突然过了某个题一样23333。
T2
继续,首先枚举k,然后呢?
恰好出现k种颜色,是不是可以广义容斥啊?
(瞎写了一个容斥式子)
那是不是套一个NTT就没有了啊?
板板讲过的!广义容斥套NTT!讲过好多遍!
可是我一遍都没听懂啊QAQ?
后悔没好好听课。。。
(苦涩.jpg)
然后开始慢慢推容斥变NTT的式子。
推了半天推出来一个,这玩意儿对不对啊?看起来挺靠谱的。
这时候还剩1h。。如果这东西写上去写挂了,肯定是调不出来了。。
首先我容斥式子不一定对。。其次我NTT式子不一定对。。再其次我NTT还可能写错。。。
决定先写平方容斥,先不管NTT的部分。
发现直接平方容斥有50分,还是挺良心的。
写完之后果然过不了小样例,继续手算,然后对着样例调系数。
调完系数就过了大样例,爽啊。
这时候只有15min了,把这个代码备份之后,开始疯狂地码NTT。
NTT部分感觉不是很难写,也就是把式子写在代码里而已,但是边界问题还是值得考虑的,虽然实际上根本不会出现问题。。。
然后延长了30min,爽快。
写完之后过不了样例,发现是NTT写挂了,NTT改对之后就OK了。
这时候已经16:45了,幸好延长了半小时,AK辣~
然后开始担心边界问题,诸如n=0,m=0,s=0之类的,试了好多,又考虑好多,感觉没啥问题。
又造了点极限数据,也能跑得过。
然后下午就结束了。
考试日,结束之后
imone果然不会下午T2,意料之中。
Cydiater打野刚考完的时候知道我AK了还D了我一波,没想到他也AK了,强啊。
下午几乎没人A题,基本上得分都是20/30/100,看来数数题还是没什么人会啊。。。
然后就是评测,又是各种锅什么的。。我写在知乎里了。
戳这里https://www.zhihu.com/question/271131295
结尾
看了榜,觉得这次HAOI高手还是挺多的。。不再是菜鸡互啄了。。完全暴力也进不了省队了。。
Primy退役了。。很难过。。却也不好说什么。。他大概是不会买D吧。。
很多人都退役了。。。毕竟省队只有这么点人。。皆大欢喜是不可能的吧。。
HAOI2018游记的更多相关文章
- 【20161203-20161208】清华集训2016滚粗记&&酱油记&&游记
先挖坑(这个blog怎么变成游记专用了--) 已更完 #include <cstdio> using namespace std; int main(){ puts("转载请注明 ...
- 【20160722-20160728】NOI2016滚粗记&&酱油记&&游记
先挖坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs.c ...
- NOIp2016 游记
DAY -2 不要问我为什么现在就开了一篇博客. 本来想起个NOIp2016爆零记或者NOIp2016退役记之类的,但是感觉现在不能乱立flag了.所以就叫游记算了. 前几场模拟赛崩了一场又一场,RP ...
- NOIP2016游记
只是游记而已.流水账. Day0:忘了. Day1:看完T1,本以为T2一如既往很简单,结果看了半天完全没有思路.然后看了一眼T3,期望,NOIP什么时候要考期望了,于是接着看T2.一开始我推的限制条 ...
- CTSC2016&&APIO2016滚粗记&&酱油记&&游记<del>(持续更新)</del>
挖一波坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs. ...
- 游记——noip2016
2016.11.18 (day 0) 呆在家. 悠闲地呆在家.. 明后天可能出现的错误: 1)没打freopen.打了ctime: 2)对拍程序忘记怎么写了...忘记随机化种子怎么写了: 3)不知道厕 ...
- 【NOIP 2015 & SDOI 2016 Round1 & CTSC 2016 & SDOI2016 Round2】游记
我第一次写游记,,,, 正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪 ...
- ZJOI2016二试+游记
...excited.... 一场打回原形爽哦. T1莫名爆到了10分,T2T3均没交,一个小时过后就没再拿任何分数,perfectly狗带了... 总之没有给自己充足的时间去敲暴力,ZJOI啊..拿 ...
- NOIP2015游记——一次开心又失望的旅行
啊,一年一度的NOIP终于是结束了 以前的大神都有写自己的感受 然而我居然给忘了!!!! 吓得我赶紧来写一份游记 Day.-INF--出发前一个星期 机智的我选择了停课 就是为了OIER这伟大而又光荣 ...
随机推荐
- Python基础系列讲解——继承派生和组合的概念剖析
Python作为一门面向对象的语言,它的面向对象体系中主要存在这么两种关系,一个是“类”和“实例”的关系,另一个是“父类”和“子类”的关系. 所谓“类”是从一堆对象中以抽象的方式把相同的特征归类得到的 ...
- 软件工程-东北师大站-第九次作业(PSP)
1.本周PSP 2.本周进度条 3.本周累计进度图 代码累计折线图 博文字数累计折线图 4.本周PSP饼状图
- 互评beta版本 - hello word!【空天猎】
基于NABCD评论作品 1.Need需求:市面上同类型的手机及PC端飞行射击类游戏有很多,所以从需求方面来说,这款游戏的潜在客户非常有局限性.近些年较火的飞行射击类游戏,例如腾讯14年发行的<全 ...
- Scurm Meeting 11.2
成员 今日任务 明日计划 用时 徐越 写功能规格说明书,代码移植 创建数据库,代码移植 3h 赵庶宏 编写功能规格说明书,学习访问数据库代码,代码迁移 代码迁移 5h 武鑫 设计界面:独立完成一些简单 ...
- 实验三:跟踪分析Linux内核的启动过程
实验三:跟踪分析Linux内核的启动过程 学号:20135114 姓名:王朝宪 注: 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.16 ...
- 修改MyEclipse工作空间
MyEclipse如何更改工作空间,MyEclipse是java开发常用工具,在开发的过程中我们会经常切换工作空间来切换项目内容,初学者来说有必要讲一下如何切换工作空间 工具/原料 MyEclip ...
- asp.net如何隐藏表格(table)的一行
直接用jquery $("#id1").click(function(){ $("#trId").css("display""no ...
- 微服务负载均衡 —— ribbon
负载均衡是系统高可用.缓解网络流量和处理能力扩容的重要手段,广义的负载均衡指的是服务端负载均衡,如硬件负载均衡(F5)和软件负载均衡(Nginx).负载均衡设备会维护一份可用的服务器的信息,当客户端请 ...
- PythonWeb 服务部署文档及迁移到Linux相关
pythonWeb的部署(Django+Uwsgi): 1. 部署服务器上需要的Python3.6环境: 安装集成了python3.6 和pip ,virtualenv虚拟环境 的Anaconda(A ...
- JAVA中处理事务的程序--多条更新SQL语句的执行(包括回滚)
在与数据库操作时,如果执行多条更新的SQL语句(如:update或insert语句),在执行第一条后如果出现异常或电脑断电, 则后面的SQL语句执行不了,这时候设定我们自己提交SQL语句,不让JDBC ...