关闭

NOIP2017爆炸记

305人阅读 评论(0) 收藏 举报
分类:

君と会った
「仆と君は同じだ」と言われ
「分からない…」けれど嬉しくて
离れ离れの刹那
「言わなくちゃ」 そう気いた
——senya《大地に咲く旋律》


前言:今年的NOIP考完了,回到学校后我想了很多,比如为什么做了这么多题,参加了这么多场模拟赛,正式比赛的时候还是爆炸之类的……是比赛前没有注重DP的训练,还是数据结构依然不够熟练,亦或是时间分配能力有待提高等等。总之心里五味杂陈。比赛之前我还和tututu谈笑风生地说,今年我们至少也有500+,结果我现在是否有400+都是个问题,面临AFO的风险。

比赛的这几天发生了很多事,两天的考试我也有简单记录一下做题时间和思考过程,就在博客写一下吧。如果成绩一出来,我真的AFO了,这就是我的最后一篇博文了QAQ。


Day -1及以前

去完JZ后的两个星期,我们一直在学校停课集训,每天1(2)套模拟题,时间非常紧凑,用记事本写出来的总结大概都是口胡,我也很久没有更过我的博客了。

还记得10月30号那天,我上午不请自来地参加了JZ的模拟赛,下午又考了SMOJ的模拟赛,都是290分,我挺开心的(然后我就被JZOJ的管理员移出了比赛名单)。后来的模拟赛,我的成绩时高时低。我发现我对一些恶心模拟题以及脑洞题还是毫无应付之力,可能是做CF的题目太少了吧。虽然我比高一的多学一年,但还是经常被分治大佬DLee虐场。

考试前两天,我看完了一部世界观很深的番:《来自新世界》,然后感觉整个人都忧郁了挺久。我是在被窝里拿手机看完的,然后就翻来覆去睡不着。我感觉我就像里面的女主,尽管拼尽全力,却依旧无法改变这个残酷的世界。

考试前一天,我突然发现自己还不会高斯消元,然而Ghastlcon说不考,我就敲了一下树套树的模板,结果因为线段树写得丑,O(nlog2(n))的被卡成70分。又敲了一下Tyvj4714,写了个很丑的暴搜,结果写完才发现Tyvj这题根本没有数据……

心情很乱,很想颓,除了敲模板,看总结,不知道要干什么。


Day 0

下午坐地铁去二中附近的公寓,在这之前先有一辆车把我们从学校送到地铁站。那辆车不仅挤,而且还散发着奇怪的臭味。坐了1h的地铁之后,我们到了公寓旁的万达广场,又等了1h,老师帮我们开好了房,我一个人住一间。

晚上和Coming,CSH,lhx_QAQ一起去吃韩国烤肉,然后我去YKgsmUDq的房间颓战cs1.6,由于不敢浪得太晚,我10:00就回房了。听说老师要查房,结果老师来的时候我正好在洗澡,我听见老师敲了很久的门,然而我还是犹豫着没有开门……

把行李搬进来的时候我曾担心晚上会不会有蚊子,因为这附近虫子很多,结果我的预感灵验了,我深知和蚊子战斗不会有好下场,就无视它蒙头大睡。

要是晚上有去万达买个蚊香就好了。


Day 1

昨晚特地在小卖部买了包咖啡,今早冲咖啡喝,结果水杯没拧紧,整个袋子都湿了。由于我用的是斜挎包,我的裤子膝盖处都有点湿。外套装在包里,一股咖啡味,纸巾完全报废,笔盒也湿了。幸好准考证被我折起来,用两张不透水的卡夹住,幸免于难。

早餐想去金拱门吃,结果没开,向一个脾气很不好的保安问路,才发现了一个街边的早餐铺。我说要两个小笼包,他给了我两笼,一笼9个。而且每个都是面粉+肥猪肉系列,我吃了4个就吃不下了,又不好意思当着店主的面丢掉,就先装在包里。导致包里又一股小笼包味。去考场的路上,我又看到一波狗粮。

到了考场,果断扔掉小笼包(虽然我感觉浪费食物很愧疚,但当时实在吃不下),连同那被咖啡泡过的纸巾。我看了一下剩余的不多的咖啡,已经冷了,我又没有带矿泉水。我问Ghastlcon:等会儿会发矿泉水的吧。他说肯定。然后我发现包里的巧克力在咖啡还是热的时候被融了,就像**。

进了考场,我发现没有矿泉水,就问了一下考官。
考官大声说:“没有矿泉水”。
然后整个考场的人都在看我,疑惑我为什么问这么奇怪的问题。我感觉今天的运气实在是糟糕透了。
算了,不吃不喝也行,裤子也好像干了,我决定冷静下来,准备比赛。

看完题面,感觉连T1是数论,应该不离扩欧,预计35min;T2模拟,但我不擅长写恶心代码,预计70min;T3感觉是tarjan缩点,预计70min。看2,3题的题面,感觉不太可能对拍,又看了一下大数据,感觉挺良心的,就靠大数据了。之前UOJ的群上说要考数论,看来灵验了。

8:45 开始做题。
然后用10min推出T1的结论(学过小学奥数真是太好了)。
9:00 开始对拍。
9:20 拍完一发不虚。
由于模拟太菜,10:15写完T2,过了大样例,应该不虚了。
10:30 想出T3的一种玄学做法,目测要写两个SPFA,时间是SPFA*50。
10:55 对自己的做法产生了一点怀疑,想了一会儿感觉还是没问题。
11:30 调过T3大样例,跑了7s,很虚。检查优化了一下代码,还是很慢。
11:45 搞定所有,检查文件名。
11:50 检查三题代码,重新看了一下题面。
11:53 忽然想到T3SPFA之后用一个类似递推的东西就可以了,时间是mk的,然而只剩7min,我根本不敢改代码。
12:00 比赛结束。

我感觉有点后悔,T3考虑清楚点再码代码,应该就可以AC了,然而现在顶多70分。去饭堂的时候和lhx_QAQ交流了一下,发现0环有可能不能走到n号点,而我的SPFA没有判,不知会炸剩多少,很虚。又和别人交流了一下,好像有挺多人没过T3的大样例。

同Ghastlcon的想法:“T3是今天唯一一道有营养的题”。
tututu好像没有推出T1的样子,还有挺多人在T1卡了很久,我感觉这道结论题有点毒瘤。
DLee:“感觉今天在打CF。”

下午和Coming他们去了8km外玩密室逃脱,回来的时候正值下班高峰期挤地铁,站到腿软。
晚饭和他们去吃农家菜,然后去YKgsmUDq的房间玩东方到10:30。

睡觉前发现忘了买蚊香,无奈只好打开空调,结果晚上居然很神奇地没有蚊子……


Day 2

今天是爆炸的一天。

早上特地检查了一下杯子有没有拧紧。然后和Coming到了一个稍微好吃点的西式面包店吃早餐。

比赛开始后看了一下题面。T1一看以为是计几,吓得我虎躯一震,想了一下发现是个宽搜,预计40min。T2感觉是状压DP+优化,预计70min。T3感觉是数据结构,我很开心,预计加上对拍80min。

8:45 开始码T1。
9:10 搞定T1。

然后我一直在想T2,当我看到n=12的时候,我的第一意识是打开计算器,算了下312,大概是50W左右。这是要子集转移的节奏啊。然后我先想了一下枚举生成树的一个叶子节点,发现不行,因为要知道父节点的深度。然后我又想枚举生成树的一棵子树,发现我需要知道子树中的边权和。

我觉得大概就是按子树转移了,但肯定需要什么奇技淫巧来优化状态,然而我想了很久,想到一些奇奇怪怪的方法,却还是没有可行的。到10:35分的时候,我不甘心地敲了个子树转移+贪心,边权相同的那40分肯定能过,说不定还能多水点分。敲完之后第一个小样例都没过,大样例炸得飞起,正解400多,我输出1100多……

由于样例并没有保证边权相同,我觉得过不了很正常,就自己出了些弱到爆的小数据,发现没问题就不管了(此处伏笔)。此时已经11:05。

看了下T3,发现很像GDKOI2017Day2T4那道《小学生数据结构题》,YY出一种离散化+Splay的O(nlog(n))的做法,然而时间这么少,我根本不敢敲。

也许我应该先做T3的,T2不要想这么久。我感觉我Day2要GG,但根据洛谷的口号:“不抛弃,不放弃,RP++”,我还是老老实实看T3能水多少分。然后码了个前30分暴力+中间20分Treap。

考完后,感觉今天顶多190,真的挂菜了,把Day1的优势全浪费了。

和别人交流了一下,好多人说T1会爆long long,要开unsigned long long,我顿时心里凉了半截。

kekxy说他想到了T2,就是按深度分层+子集转移。我考试的时候想过枚举叶子节点,想过枚举子树,居然没想过按深度分层!貌似SemiWaker和ZZB都想到了。更令我震惊的是T2暴搜有70分,搜得好还能AC!我考试的时候根本就没想过暴搜,觉得肯定超时,但事实上8个点,就只有28条有用的边,要在其中选出7条能够成树的边,其数量是远远小于C728的。

Ghastlcon和DLee都不停地水T3的分,结果都能拿80。tututu想出了T3的二分+树状数组的做法,SemiWaker写完了线段树+Splay。

然后吃完中午饭,我忽然想起我T2子集转移的时候,有一句代码写错了。本来应该是t=s&(t-1),我写成了t=t&(t-1)。这么看来我T2要爆零了。

噩耗接踵而至,我感觉天上的太阳都是灰色的,心里想着这次连400都没有了。吃完饭老师让我们在二中门口照个相再回去,照相的时候老师说了声“胜利!”,结果我们全部听成了“送命!”。

站在回学校的地铁上,我觉得身累+心累,回去认真学习文化课吧。NOIP挂菜了,说不定还要AFO。


后记:回到学校,我上课一点心情都没有,上几节课懵逼几节课。晚修不能去机房,也感觉很不适应。但我不能多想,因为还有一大堆作业要补。

昨晚我拿到了比赛时的源代码,上洛谷的民间数据测了测:100+100+60+100+15+50=425。不知道测官方数据怎么样,大概是要天选了吧。


幻梦终醒,本无不散之宴


Upd 2017.11.22:

成绩出来了,D2T2比洛谷的数据多了10分,总分435。

事后反思,D2T2实在是不应该这么低分,暴力搜索都有70;而且T2花费太长时间,一直试图想正解,导致T3水的分数也不多。事后我T3用不到1.5h就码完了正解。Day2主要还是时间分配不佳的问题。

正如tututu所言:“考试前以为自己能AK,考完了才发现自己菜。”一场成功的考试,应该是把自己能拿的分都拿了,而不是AC了多少题,比别人强多少。看着自己那惨不忍睹的省排名,感觉前路依旧漫长。

考完后,我们高二经常来机房的就只有6个人了。fzh退役了,Janous退役了,但活下来的人还要继续走。

现在,我终于可以无所顾忌地学一些(自认为)高深的算法,比如FFT,虚树之类的。不过成绩稳定才是最重要的,只希望省选的时候能够正常发挥,不留下遗憾。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:31033次
    • 积分:1703
    • 等级:
    • 排名:千里之外
    • 原创:135篇
    • 转载:0篇
    • 译文:0篇
    • 评论:23条
    最新评论