[Other]NOIP2017游记

去年在附中参加了NOIP2017(就当打一次酱油吧),虽然已经过去了4个多月……

Day − ∞

2017/11/10 下午 看考场
2017/11/11 上午 NOIP2017提高组Day 1 下午 NOIP2017普及组
2017/11/12 上午 NOIP2017提高组Day 2

Day 0

又回到了我曾经爆炸过的地方。
下午约3点到附中,过了约30min,cx & cyx dalao到了附中。
熟悉考场之后回到宾馆,一整个下午几乎没有刷什么题,也没有复习板子,全部都在刷博客(果然蒟蒻啊)。
感觉明天药丸了
晚上6点去吃了牛排。
吃完回去之后开始复习板子,重新复习了一遍NOIP2016提高组的题目,
预测明天的题目,可能是:
T1:sb模拟
T2:树结构/图结构
T3:DP

Day 1

A.M.

吃完了早餐,进了考场。
一发到题目,迅速去看T1,结果发现今年Day1T1画风突变,之前Day1T1都是sb模拟,今年居然变成了数学题:
给定 a,b a , b (a,b)=1 ( a , b ) = 1 ,求不能用 a×x+b×y a × x + b × y 表示出的最大整数。
不管了,反正我也想写暴力了。
为了验证正确性,我生成了几个规模为 100 100 级别的数据,发现怎么结果和 a×b a × b 那么接近?
算了一下, a×bab a × b − a − b
又生成了几个数据,粗略地得出了正确性后,心一恨写下了 a×bab a × b − a − b ,反正规律找出来就行了……
再看T2,看了10min才看完,发现几年的模拟题从第一题被移到了第二题,而且是个大模拟。。。。
写+调差不多用了40min。
最后看T3。
DP,我一开始是想 f[u][i] f [ u ] [ i ] 表示 u u 到终点,距离为 u u 到终点的距离 +i + i 但这样仿佛会出现环……………………
反正看运气吧,写了个记搜,然后就比较科学了……
对于判零环,我随随便便地敲了个Tarjan,结果一道T3被我的辣鸡代码能力写到了 105 105 行。
写完3题之后,还剩下30min。
我感觉我的T3绝对是炸的,所以最后30min都一直在T3对拍,基本没有检查T1和T2 (能过大样例就是了)
考完12:00出来,我校的 舟神 和 wy Day1都AK了,舟神还说Day1 T3的难度是 普及- ?????
另外,cyx dalao自己手推出了T1,而我只会找规律。。。。。
中午去吃了兰州拉面,回宾馆验证今天T3转移顺序的正确性,证明之后又去对Tarjan的板子。
看了NOIP2015&2016普及组的T4,下午准备去普及组。

P.M.

进考场,发现普及组考场的电脑太辣鸡了,连扫雷都没有,更重要的是,pdf阅读器复制不了(害怕文件名写错)
拿到试题,看完T1和T2,直接水过(因为不能复制,所以文件名检查了半天)
不过还好T2的规模是1000的,否则T2就是一道数据结构题
开始看T3,BFS?我仿佛忘记怎么写了……
还是跑最短路比较科学一点点,直接码上。测了下大样例,不过后来发现忘记特判了右下角无色的情况,再加了个特判,T3结束。
最后T4,仿佛是个二分答案+DP,但似乎复杂度不对,一开始的想法是线段树优化,结果 108 10 8 的复杂度仿佛特别悬,单调队列?
这可是NOIP普及组,竟然有单调队列?难道正解会更简单?
恐怕和15和16一样T4都是思维题……反正先想到的方法就写进去吧,写+调完成后,5:00。
想玩一玩扫雷,但这机子上竟然连扫雷都没有。。。。。。。。。于是开始疯狂对拍T3和T4。
6:00结束,cyx和cx也AK了。
orz cx T3的巨佬DP
orz cyx 4:00就AK

Day 2

和昨天一样,吃完早餐之后直接去考场。预测题目:
T1:sb模拟 T2:DP T3:思路题(压轴题)
T1果然是sb模拟,直接写个并查集水过,但怎么发现有点不对?
原来今年Day2T1有个坑(爆long long),改成了double之后看T2。
T2,一看就是状压DP,而我却怎么也想不出来(之前都没做过与生成树相关的状压DP题)
f[u][S] f [ u ] [ S ] 表示 u u 的子树内点集为 S S 的最小代价,枚举一条边 (u,v) ( u , v ) ,但仿佛特别不好转移。。。反正我也想写爆搜了

那一天20:00 神犇zzq发blog说只要加一维表示深度就行了,我果然好菜啊

我写了个 nn1 n n − 1 搜一个有根生成树,再 O(n) O ( n ) 判断,复杂度达到了 O(nn) O ( n n ) ……这样仿佛70分都过不了……
于是又写了一个特判(边数为 n1 n − 1 )。结果大样例在本机上狂T不止
T3似乎是NOIP有史以来第一道数据结构题,因为忙于思考T2而没有时间去搞T3,所以虽然我有了一个Splay的想法,但写起来却异常恶心。
于是写了个30分暴力,再去想 q500 q ≤ 500 难道要用……要用……哈希表?看在我一向对哈希表有抵触情绪的条件上,直接放弃。。。。。。
出了考场才发现T3的50分根本不需要什么哈希表。NOIP还是能骗几分骗几分的人吃香
结果cyx and cx dalao T2的复杂度竟然是 O(n2×n!) O ( n 2 × n ! ) 的,真不知道他们用了什么巨方法。
cx第三题对于 x=1 x = 1 的情况竟然写了个Splay拿到了70分(真佩服cx dalao的勇气)
orz lpf & pyz T2 AC
后来才发现T3和我之前在bzoj上做过的一道题很像

后来才听zzq说今年的Day1T3卡常,不知道记忆化搜索会不会被卡掉,据说正解是在最短路的拓扑序上DP

Day n

普及组成绩出来, 100+100+100+70=370 100 + 100 + 100 + 70 = 370 ,去检查了之后,才发现T4多了一句,无缘AK QAQ。。。。。。

Day n+1 n + 1

提高组同步赛成绩出来,
Day1T2因为没初始化丢了50分(QAQ),Day1T3居然A了。
Day2T2居然有70分(应该是考场的机子太垃圾了吧)
总分 100+50+100+100+70+30=450 100 + 50 + 100 + 100 + 70 + 30 = 450
好惨啊,如果有D1T2的初始化和D2T3的 q500 q ≤ 500 520 520 了。。。

The End

虽然提高组只是同步赛,我才初三,只有 450 450 分,但这又何尝不是一次修炼。不知道下一次能不能努力AK啊!

你可能感兴趣的:(Other)