GDOI2018滚粗记

day-50:

高中全体成员去了北京训练,我被虐成傻逼(貌似总分全校倒数第2)。

day-20:

回广州了,间断式略微考好55555.....


day0:

早上起床好像有点晚qwq

然后简单打了个FFT的板子,然后又打了个kmp的板子,最后简单看了下扩k的原理

期间我居然把FFT的2pi/h的h打成了n....

下午在初中部门口集中,集体乘坐大巴去中山。

中山一中在市区(不像我们那里),然后宾馆在走路10分钟可到的地方,终于不用像往年一样坐15分钟大巴通勤了yes!

今年运气不错,酒店分房间分到一个套房有客厅哈哈哈~~~(结果这里就变成娱乐中心了~!@#¥%……&*()——)

晚上打了下吃鸡和jokebird。


day1:

7点40到达学校

8点进场,试机十分钟后被告知8点半开考23333。

看完T1,瞬间想出$O(n imes d(n))$的做法,考虑到$n≤10^6$。则d(n)最大为240,花了10分钟就写完了。

做完T1后,去看了T2和T3,感觉T2放在前面照理来说应该比T3简单吧,于是就开始搞T2。

然后花了30分钟想了一个O(n)的dp,结果发现过不了第二个样例。

于是做了一些简单的优化,过了第二个样例但过不了大样例......

于是乎共计死磕了2+h,然而并没有磕出来然后就大写GG了...,这个优化过的错误dp貌似只能拿20分。

还剩下一个钟的时候,决定放弃T2而去做T3。

不得不吐槽下T3的读入真的是毒瘤,对于询问和更新,都要分别开一个结构体来存储,还好并没有额外多花多少时间。

然后最初就打了一个10分的最烂的暴力。

后来发现,x=1的情况也挺好打的,然后花了15分钟打多了一个20分的档。

此时距离比赛结束还有20分钟。

其实我原本打算弃疗了,后来想下不能这么颓,于是就打了那个一条链的10分档。

5分钟后比赛结束,滚粗溜了。

估分:100+20+40+0=160。


出考场:

zjt表示自己1h切完前三题,“然而”T4只有20。

zmz,巨佬lyy,dtz等众神均表示自己过了T1和T3,感觉自己瞬间爆炸。

感觉自己被T2坑死了,早知道先花5分钟仔细思考下C。

然后中午又颓了一把貌似吃鸡打了个第二


下午讲题中规中矩,不过感觉比往年快了很多。

感觉自己考场上不知道在想些什么,T2其实如果想到差分的话,难度好像真的和T1差不多呜呜呜。

或者说,如果考场上切掉T1后直接学习dtz直接上T3,或许能有更高的分数。

或许这就是我菜的体现吧....

中山一中的打印机非常快,成绩单无需等待,直接开发。

D1得分:100+30+30+0=160。

由于出题人特别良心,T2的k=2多了10分,但是由于T3的一条链打得太匆忙结果并没有仔细检查结果爆炸少了10分(但是我的估分还是特别准对不对qwq)

orzlyy210,orzdtz215,orzmz220(zmz假假竟然宣称自己只有22分是lyy的9分之1)

然而dcx同学因为某些神秘思路T1使用了二分,get-30pts。

晚上继续吃鸡+jokebird。


day2: 

由于我们房间的空调并不给力,晚上好像没睡好。闹钟响后多睡了20分钟qwq。

今天有幸被巨佬myh邀请坐他家车去学校(不过好像没啥必要)。

快8点时进入考场,8点零几时去了趟厕所,再次回考场时已经8点15,发现开考了... 自带-300s

然后看到了T1,怎么这么暴力啊。。。

一眼看过去二分+spfa+莫比乌斯反演,于是果断先推式子。

通过冷静分析,不难发现通过求一个$sum mu(i) imes i$的前缀和,对于一条边的权值我们可以用 $sqrt{a_i}$的时间求出,然后就先打了个小函数来求这个值。后来发现求错了,灼热分析半个钟后发现自己的线性筛打错了(当$i%pri[j]==0$时,直接break掉了,没有对$mu (i imes pri[j]))$赋值)。接着再花了10分钟打了个spfa测了个大样例就溜了。(谁说没有签到题的qwq)

然后就去把T2,T3,T4的题全看了一遍。接着懵逼一个钟....

然后发现T2的k=1挺可做的,好像就一行,打了一个,get10pts。

后来发现T3并没有想出来,好像也没时间了,就打了只有一个询问的情况,get20pts。

接着冷静分析T4,突然想起前年yww的深搜+广搜特技,顺着这个想想到了50pts的做法,于是就打了一个。然而大样例过不去,后来看了一眼黑板发现T4的大样例是错的....

此时我只剩下20min了,感觉没啥事做,就花3min打了个T2的状压,get5pts。

接着就是中规中矩的检查...检查后打开游戏一栏发现并没有游戏(其实本来想在excel里面弄一个老虎机玩一下的,后来没时间了)

D2估分:100+15+20+50=185。

出考场,yww表示自己320orzorz。


讲题还是中规中矩,不过我好想在斗地主,从6000斗到2.2W再到8000....

发成绩:100+15+20+20=155。

怎么少了30?!仔细一看,两个点1004ms,一个点1024ms,我***。

复评,xjb乱搞,T掉的3个点都弄到了900ms下,+30。

真实的成绩还是100+15+20+50=185。

复评期间发现T1的数据居然出锅了,n为100时居然有边连向了101,特别牛逼。

不过貌似今天好几个巨佬都考挂了(心疼yay一秒,两题编译CE,不过后来好想被救了成功+100pts)。

晚上就在写这篇滚粗记23333


day3

由于我去年去过day3,可能是我当年巨菜的因素吧(其实现在也好不到哪里去),只get了40分,而且全套题目的暴力均需大力卡常...极其不友好...

于是带着这种恐惧的心理进入了考场....

开头的一个钟疯狂在看前三题(反复横条式看题~~),全程懵逼...

然后突然间T1想到了一个60分的tarjan+缩点求入度的做法,然而并没有立即开写。

后来突然想到了T3的正解,先跑一遍网络流,然后对询问串排序,接着二分,好像答案就出来了诶。

然后花了1h写完了,由于没有大样例,自己写了一个makedata弄了一些数据然后简单地看了几眼然后就溜了。

接着还剩下2h,于是花了15分钟打了一个T1的60分,测完小样例后又测了一个小的手构就溜了。

然后我去看了下T4,吐槽下这个题目描述真™清晰,花了30+min后终于看懂然后写了个20分的。

最后只剩下半个钟了....

然后花了20min打了T2的20分,接着就溜了。

估分:60+20+100+20=200。


下午发成绩,60+10+60+20=150。很神秘。

后来去复评,发现T2好像double爆精度然后就GG了10分,T3似乎并没有什么肉眼可见的锅,T3写出来的部分分只有50,然而我得了60分,去看了下我输出的答案好像比标准答案小了那么一点点,可能是被卡哈希了吧....

然而zwl好像考挂了,差了一名进队惨惨(然而我们学校有名额不怕哈哈哈)

最后就愉快地495滚粗了...貌似没有进前30惨惨


总结:

1,这次总体上计划外的失分不算特别多,可靠性相比以前有了不小的提高,然而在day3的额外失分有点严重。

2,今年day1的做题策略出现了偏差,t2磕了太久导致没时间写T3,丢掉了不少的分数,以后要设置一个思考时间上限,到达上限后跳过此题。

3,训练中的题对GDOI针对性不算太强,偏难的题目较多,而且我也没有太多具有一定挑战性的题目,稍难的题目并没有做出来。

4,暴力分一定要尽可能地打满,而且不能错!!!(我这次好像还有几十分的暴力没打)

5,尽量想完善后再开打,打完一个模组后,最好单独进行测试,降低调试的工作量。(不过我好像这三天没有怎么调试,也许这就是暴力选手吧)

NOIP2018再战!!

原文地址:https://www.cnblogs.com/xiefengze1/p/8974329.html