「HBOI2018」游记

HBOI2018[九省联考]——零AC线外选手进队记

$0+80+20=100$, 这便是蒟蒻选手 $Day1$ 的 $NOIP~2017$ 分数。
$van$ 了,全 $van$ 了,这边是我当时的想法。
在前一天,我拿到了自己 $NOIP$ 考试时的源代码,交到了 $luogu$ 上面测了一发。
嗯,$450$ 分,感觉很稳。
一边感觉自己省队不出意外肯定稳了,一边盘算这几天要去哪里看看电影,放松一下什么的。
没过多久便传来噩耗,在学军的数据之下,我的 $450$ 分挂成了 $270$ 分,其中第一题还因为头文件的问题 $CE(Compile~Error)$ 了,编译错误,$OI$ 选手的大忌,这不可能啊!
我明明都编译通过了。。。

虽然考场上是出了点意外,我的 $Devc++$ 不能编译我的代码,似乎是什么 <cstdio> 缺失什么的。
然后我就没用这玩意,用了 <iostream> 似乎就对了,然后直接 $cin, cout$ 嘛。
自以为很机智,然后有一个无法避免的函数必须使用 <cstdio>,那就是 $freopen$。
$freopen$ 是个很神奇的东西,我往往最后加,但锅就出在这里了。
添加 $freopen$ 函数之后。。。我没有将这一份代码重新编译一遍:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/*
题目大意:
给定互素的两个正整数数a,b,
求一个最小的正整数c,使得所有大于c的数d,
都存在一组非负整数解(x,y)
有ax+by=d
*/
#include <iostream>
using namespace std;
int main() {
freopen("math.in", "r", stdin);
freopen("math.out", "w", stdout);
long long a, b; cin >> a >> b;
cout << (a - 1) * (b - 1) - 1 << endl;
}

然后 $100$ 分就这样没有啦,人生中最容易 $AC(Accept)$ 的考试题就这样放过去了,好气啊,感觉全世界都 $AC$ 了。
下面放一个正确的代码,大家自行找不同,注释部分可以忽略。

1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <cstdio>
using namespace std;
int main () {
freopen("math.in","r",stdin);
freopen("math.out","w",stdout);
long long a, b; cin >> a >> b;
cout << (a - 1) * (b - 1) - 1 << endl;
return 0;
}

以及题目的提交地址:小凯的疑惑,不清楚的可以自己思考一下。。。
这道题也就告一段落吧,凉啦凉啦,好在 $CCF$ 良心数据,我最终苟住了我的 $325$ 分。
可能可以不用退役吧。。。
$NOIP$ 只是开始啊。。。
退役了这一届信息组就崩了啊。。。
所以不能退役啊。。。
还没带过学弟呢。。。
蔡爷爷去年 $332$ 也翻盘了啊。。。
听同省的王老师说,最牛逼的是 $ZJE$ 同学,$NOIP$ 炸成 $240$ 分然后逆天进队啊。。。
然而今年 $400$ 以上的太多了啊,更是有 $XCH~530$ 的传奇分数。。。
算啦算啦,慢慢搞吧,信自己一回。。。滚去上综合课了 $2333$

这搞毛线啊,本来就菜,$NOIP$ 挂成这个鬼样子,还把学习重心转向综合课?作大死啊!
不过考的不好又能怎样呢。。。老师一句话担心你继续搞竞赛有风险,就能拒绝你的一切请求。
自己也没实力敢说不啊。。。

但不能颓啊。。。
每天中午去机房,下午有空也去机房,然后周末?不存在的,全部待在机房吧。
就在这样的日子里度过的高二的上半学期。。。
每天没怎么写作业,成绩也不太理想,也感谢给位老师和课代表的体谅吧。。。好多次作业没交了233。

然后就到了冬令营

听说冬令营炒鸡难啊。。。
历届的题完全不会做啊。。。
打暴力吧。。。
混分呐。。。
看《骗分导论》啊。。。

冬令营的环境看似不错。。。
但完全不能满足 $OI$ 选手的需求啊。。。
$TMD$ 快 $600$ 人的冬令营,寝室连放电脑的桌子都没有?坐下来敲代码的凳子都没有?
鼠标完全不能用,因为没有位置。。。
键盘?凑合吧,还好是块硬板子。。。
关键是。。。每个人都带来了电脑。。。你得有充电的位置啊!!!!!!
$WIFI$ 寝室也没有啊!!!!!!$NND~4G$ 信号咋也屏蔽了啊!!!!!!

冬眠体验极差

当然,我不是来冬眠的。
每天听听讲课的大佬们的一些新奇思路
跟着口胡一波超级数据结构:

数据结构学的好,未来工作没烦恼。
edt 是一个喜欢乱搞数据结构的蒟蒻,有一天,他作死想去刁难一下dalao:
edt想求一种数据结构,使得可以实现区间加,求出某一区间大于k的元素的个数
dalao1:sb线段树
dalao2:sb分块
dalao3:sb平衡树
edt: 不行,那就加上取模,求区间取膜mod后大于MIN小于MAX的元素个数
dalao1:线段树&……¥#&……%……&&%¥
dalao2:sb分块 &%¥……%#¥#&……&
dalao3:&……%&¥LCT维护SBT水题 &……%&……%
edt:那不仅取模,每个数乘上数组下标再取模
dalao:¥%¥¥&(#¥% 叽里呱啦叽里呱啦
edt:不行,在把取模的值丢到一棵树上,维护一棵仙人掌乘积方差的最小极差
dalao:替罪羊树上用sb块状链表维护Toptree上的最小费用最大流和可持久化仙人掌,算出来在基尔霍夫矩阵中反演后跑一遍fft维护的插头DP就好了,给我三分钟轻松水过。。
edt:mmp

以上来自同校高一 $@Edgration$

然后吃饭,睡觉。。。不说了。。。
真的不说了。。。手机摔了。。。$QAQ$
$($ 如果没有牌子的话 $)$ 亏大了啊。。。
于怒水?
拿牌子了啊,金牌啊!!!
咳咳。。。虽然。。。毛线用都没有。。。没约。。。

不过得了个奖,想要停课搞竞赛也就有了理由嘛
然后郑重地写下生死状(停课申请)之后。。。我开始了我最近两个月的学习。。。

和学长一样,估计了一下自己的分数,以及自己翻盘,得多拿多少分,最近应该去学什么东西,然后列出了一份清单。。。

虽然直到现在这一份清单也没有全部完成

因为 $Windows$ 系统出锅的我决定在此时使用 $Linux$\
然后发现,都是些什么玩意啊。。。不能单步调试,编译都要自己写脚本,搞毛线。。。。
感觉就像回到了石器时代。。。
坑爹。。。

之后的时间,我一边强行熟悉 $Linux$,一边学习了一波各种神奇的反演知识,做了做网络流,和在冬令营上结识的 $panda$ 讨论一些学术问题。。。
无意中发现了 $KSkun$ 大佬的博客,也学习了不少新的知识,但依旧跟不上他的做题速度。。。(我太弱了$QAQ$)

然后便到了模拟考试的日子了,刚开始还是每 $3$ 天考一次,我可以不至于天天被吊打。。。
甚至。。。偶尔还能虐个场,当场$AC$ 两道题的情况也有过,但挂的时候依旧很惨啊。。。

心虚。。。

虚着虚着就要省选了。。。
当时还有计划要口胡 $AK$ 所有的历年(简单)省选题的伟大理想。。。现在怕还没能实现啊。。。

最后一次模拟赛了。。。
和高一的一起考。。。
考挂了就丑了啊。。。
还怎么做榜样。。。
在打开最后一次模拟赛的题目之前,都很心虚。。。

但是之后。。。?

第一题。。。sb倍增 + 树状数组 $O(nlog^2n)$
第二题。。。我做过啊,离线 + 二分 + 线段树 $O(nlog^2n)$, 听说有 $O(nlogn)$ 的在线做法?先不管了,$A$ 了再说
第三题。。。sb动态规划 + 树套树 $O(nlog^2n)$

稳了啊,我能 $AK$ !

$1.5H$ 不到,$3$ 题的正解已经打完,剩下只剩对怕了啊
$1.8H$,三题暴力程序准备完毕
$2.0H$,三道对怕拍上,简单修改一下。。。
估计 $AK$ 了,睡一下。。。

这次最后的比赛最终以我 $300$ 分的好成绩告终。

省选

得知了自己的考号是 $11$(排名$11$,估计有两位大佬退役了) 之后,我觉得自己还是能抢救一下的,两天都不打挂。。。总能进 $4~5$ 名吧。。。那就进队了啊。

$Day~1$

$T~1$,博弈论?搜索?还好最近跟着 $panda$ 做了一下对抗搜索 $\alpha-\beta$ 剪枝等玩意,$50$ 分有吧。。。敲了。。。
$T~2$,$woc!$,我看不懂题意。。。全完了。。。看下 $T~3$ 吧。。。
$T~3$,$woc!$,不会做。。。打暴力吧。。。$15$ 分到手。。。

回头干 $T~2$,咦,我看懂题意了,好高兴。。。$30$ 分暴力到手
继续 $T~3$,算了算了。。。想不出来。。。把链的暴力也打了吧。。。$25$ 分到手。。。
再次回头干 $T~2$,咦,我想到了一个贪心,,手玩几组数据之后。。。似乎是对的?好高兴。。。怕不是要 $AC$ ? 我这种傻逼选手终于也要 $A$ 题辣

拍了十几组数据发现没毛病之后。。。就考完了。。。

一出考场。。。$panda$ 告诉我第一题题意出锅了。。。慌得不行,以为爆零。。。不过也觉得稳啊,毕竟我应该是 $AC$ 了第二题了。。。最后确认第一题是他看错了。。。才放心。。。

最后成绩下来了。。。$60 + 55 + 25 = 140$ 虽然是第一天 $Rank2$,但同样觉得自己 $T~2$ 挂的很奇怪。。。不过管他的呢。。。反正和 $NOIP$ 加权的分数一看我已经第 $5$ 名了,$NOIP$ 的失利终于被拉回来了!

今天 $ysw$ 也有 $100$ 分,目前排名 $15$,明天不挂估计也省队了吧;$xyx$ 稳啊,$105$ 吊打所有女生,估计随便考都进队,然后还是 $A$ 队,强啊;$xlj$ 有点惨,只有 $45$,估计明天不好翻盘了。。。怕是得明年再省选了。同省的 $xch$ 似乎中场 $AK$ 然后溜辣,虽然挂了一题,但依旧 $180$ 分 $Rank~1$,省队队长稳啊;$panda$ 考试最后慌了。。。看错题目,不过好在最后改回来了,这也是心理素质极好的啊, $115$ 加上 $NOIP$ 分数不低,也很稳。

$Day~2$

$T~1$,网络流?感觉可做题啊,先放一下,有时间一定要 $A$
$T~2$,树上的神仙题,感觉会 $N^2$ 的动态规划,然后复杂度炸了。。。出题人没给这个部分分233,溜了。
$T~3$,字符串题?似乎莫对套后缀数组离线可以搞一搞,不过打起来很麻烦。。。

先干 $T~1$,第一问裸的网络流,第二问求最大的最小?二分啊。。。等等。。。这个复杂度不对啊。。。$O(n^4logn)$? 不行不行。。。天呐。。。可持久化网络流?分段记忆化?什么神仙玩意?算了。。。我暴力每次存一波图吧。。。复杂度 $O(n^3logn)$ 似乎是对了?可以 $AC$ ?然后就感觉有个监考老师在背后偷偷瞄我的代码。。。感觉好虚。。。一定要打对啊。。。不然全 $van$ 了

$T~2$ 我感觉最多 $10$ 分啊。。。性价比不高。。。干 $T~3$,似乎后缀数组超级麻烦啊。。。(完全没想怎么$HASH$),不妨先打 $25$ 分暴力吧。。。一遍过了编译和样例。。。已经心力憔悴。。。不像打对拍了。。。就仍那里了。。。

打完 $T~2$ 的最后 $10$ 分,离考试结束也没 $1$ 小时了。。。检查。。。$T~1$ 是我最后一次 $AC$ 的机会了啊。。。可不能出锅啊。。。

然后在考试结束前 $5$ 分钟发现自己 $T~1$ $MLE$ 了数组开小了边数又炸了。。。不知道怎么搞,只好调小数组以免 $MLE$,怕是不能 $AC$ 了。。。

一出考场。。。发现自己 $T~1$ 忘了删反向边。。。怕是全完了啊。。。这是要爆零的节奏啊。。。听说他们都打的 $70$ 分暴力。。。我感觉这个假的正解怕是要完。。。暴力分都拿不到了。。。

最后出成绩时还真是吓坏了我,我问讲师今天也没有人 $AC$ 了第一题啊,他立马就回过神来。。。问我是不是 $0011$ 号选手。。。$QAQ$,心里一惊。。。感觉要么自己凉了,要么发达了。。。“你打的 $O(n^3logn)$ 的算法吧?这个带 $logn$ 的算法就看你敢不敢打了。。。我今天看到你当时打网络流,以为今天有人要过题了。。。”。。。当时听这语气就感觉药丸。。。

算了,依旧感谢 $CCF$ 的不杀之恩。。。我这一题光荣地得到了 $80$ 分的好成绩。。。比暴力分高 $10$ 分,算法是正解算法之一。。。然后被卡常数了 $2333$

然后今天分数就比较惨淡了。。。我总分就 $80$, 后两题的暴力估计挂了。。。
$ysw$ 有点惨。。。他今天拿到我的分数就进队了。。。预估第一题的 $60$ 分挂成了 $10$ 分。。。无缘 $NOI2018$,感觉很可惜。。。
$xch$ 依旧 $95$ 分虐场,不过 $Rank~1$ 被 $wqs$ 抢过去了,感觉贼气\
$xyx$ 稳稳地干掉了所有女生,拿下省队 $A$ 队的位置。。。

总结一下,今年湖北省选最终名单便是 $xch, wqs, cxy, wyx, ljy, wxz, yxr, lyc, xyx$,庆幸我们能在这场考试中存活,也对 $ysw, wyl, xlj, ztc$ 的离去表示遗憾,希望能尽快补回落下的综合知识。

然后就是高一的今年 $NOIP$ 一定要考好啊。。。不然就像我一样从 $NOIP$ 一直虚到省选了,虽然只占 $30\%$ 但是省选里面很难能比别人多拿什么分,别看着什么 $5$ 分,$10$ 分少就不敲了。。。有时候就差那一点点啊。。。最重要的是。。。想要 $AC$ 一整道题目的同学,一定要想清楚有没有空间限制,时间限制,代码长度限制
我感觉开场暴力打满,留下 $2 - 3$ 个小时干一道题正解是不错的做法,这样的话一般暴力挂了。。。你可能还有正解分,不会低,正解挂了暴力分还在。。。全都打对了估计就 $Rank~1$ 了,至于全都打错了。。。你凉了。。。

然后最后。。。这个标题是唬人的啊。。。不想 $A$ 题的 $OIer$ 不是一个足够优秀的 $OIer$,虽然功利来看,暴力打满不出错真的是可以进省队。。。
这场省选,其实两次考试结束之后,我都以为自己能够 $AC$ 一道题目的
第一次挂了是因为一个错误的贪心。。。在某个条件下是正确的,一般情况却很可能发生错误,似乎还得改改思路才能完全过掉?然后 $A$ 题失败。。。
第二次挂了。。。是因为我的常数太大被关了起来,同省的 $panda$ 也和我打的一样的做法。。。然后更可惜。。。被卡成了暴力分。。。有点惨。。。

这就造成了整个湖北省省队只有队长 $A$ 过题的惨烈局面。。。

就这样吧。。。度过了这最难的一关,就有机会面对外省的大佬们了。。。
再列一张无法完成的计划表

下个星期和队爷们一起去湖南省选溜达一圈,然后就 $APIO, CTSC$ 了,之后的 $PKUSC, NOI$也是十分重要的,最后高三慢慢搞文化课吧233,感觉好多坑。。。