本人初二,坐标 BJ。
day -11~0
比赛前的两周,每天下午都是停课逃到机房或者回家,打了一周的%你赛,刷了一周的模板题,但是并没有详细的复习最小生成树。
然后考完 CSP 就是期中,所以决定 whk 摆烂了,我已经两周没上道法和历史课了。(地理和生物因为都有一节在上午所以还是上了)
最后一天晚上有点紧张,非常害怕 S 1= 不了,大概 12 点往后了才睡着。
day 1 上午
比平时上学晚起一会儿,然后去学校机房,没有发觉把电话手表放到外套兜里了,还好机房暖器充足,我把外套脱在教室外面了,险些退役。
考试开始先打缺省源和对拍,完事开题,前三题秒了,T4 稍微多想了一会儿,想出来了于是开始写代码。
最终 1h50min AK(包括写对拍的时间),然后开始在代码里写迷惑行为和睡觉。
day 1 中午
吃饭和睡觉。
因为上午 AK 了所以下午信心++。
day 1 下午
从家去学校机房。
依旧先打缺省源和对拍,打完后先把所有题看一遍。
T1 思路秒了,看了看 T2 觉得有希望做出来,细想了一下发现性质 A 很好写,直接把所有乡村都选上就行了,再加上 $2^k$ 枚举选哪些乡村然后 $O(m \log)$ 跑最小生成树能得 64 分,感觉够多了。再看 T3 和 T4,行了都打暴力吧,10+8。
大概 20~30min 写完 T1,感觉没必要写对拍然后就去写 T2。
T2 先写性质 A,我发现我把“均存在 $1 \leq i \leq n$ 满足 $a_{j,i} = 0$”看成“对于所有的 $1 \leq i \leq n$ 满足 $a_{j,i} = 0$”了。慌了一下,但问题不大,好像没什么要改的。
然后就写剩下的暴力+对拍,这里的最小生成树我用 Kruskal 写的,对拍用的暴力里 $2^k$ 枚举乡村没什么好改的,我就只把最小生成树的算法换成了 Prim。拍了 1 组数据就拍出错来了,原因是第一个代码中在枚举 $2^k$ 种方案是都在同一张图上做修改,最后没完全清空,而对拍的暴力中我把图复制了一遍再新加边。
写完 T2 大概还剩不到 2h,T3 决定用字符串哈希写暴力,保底 10 分,如果 CCF 新的测评机非常快的话,我还能再拿 20 分,不过我并没有抱有什么期望。
T4 8 分暴力直接按题意模拟即可。
最后还剩 30min(为啥俩暴力写了这么久啊!)决定再去想想 T2,尝试贪心并写了一坨代码,对拍发现没什么问题后在最后 10min 把它跟原来的代码合并了(数据范围大暴力跑不过的时候才用贪心)。
由于无法估测出 1= 分数线,所以最终悬心走出了机房。
day 1 晚上
吃饭,然后玩了 3h 的锈湖。锈湖真好玩。
day 2 上午
睡觉,然后又玩了 1h 的锈湖。锈湖真好玩。
day 2~3
复习期中。
day 4~5
期中考试。
晚上出分了,J AK,S 100+32+30+8=170,我的 T2 怎么挂成这样了?别的同学人均 200+,感觉自己 1= 很悬。
day 6
wzx 巨佬 S 组 215%%%。
看样子分数线在 150 左右,原来是别的同学太强了。有望 1=。
晚上回家看某图灵预测 BJ-S 1= 分数线 155,放心了。发现好像还没人写 J 组迷惑行为大赏,于是决定自己写:BJ-J迷惑行为大赏。
day 7
上学,然后膜拜翔哥。
期中也都基本出分了,这里顺便就把 whk 总结一下吧,我们班一共 45 人,年级一共 700 多人。语文 80(班排 38 年排 269左右),数学 92(班排 13 年排 37),英语 82.5(班排 41 年排 不知道),物理 95(班排 倒数 年排 不知道 班级中位数 97)。
语文文常错了一大堆,阅读理解基本上每道题都扣分了,原因是没好好复习,又遇到了毒瘤出题人和毒瘤定评标的人,语文老师讲试卷的时候在喷评标。
数学扣分中有 1 分是因为被老师坑了,有 2 分是因为计算错误,有 2 分是因为考试的时候不知道在干什么,剩下的 3 分是不会几综。
英语常年倒数就不说了。
物理扣的分中,有 2 分是涂错答题卡了,有 1 分是选项看错了,有 1 分是题读错了,有 1 分是疑似考试的时候睡着了。
不难发现我们期中的 RP 都给 OI 了。
day 8
早上睡醒以后把自己 S 组 T2 的代码下载下来,放到洛谷上测了一下发现 36 分,只 A 了前 8 个测试点和第 12 个,剩下的都 T 了,再跟数据范围对了一下发现应该是性质A判断错了。一看发现我的判断写成这样了:
vi c(k+1);
vector<vi>a(k+1,vi(n+1));
bool XZA=true;
for(int i=1;i<=k;i++){
cin>>c[i];
if(c[i]!=0)XZA=false;
for(int j=1;j<=n;j++){
cin>>a[i][j];
if(a[i][j]!=0)XZA=false;
}
}突然想起来比赛的时候好像给这段代码造的数据中 $a_{i,j}$ 全是 0,完全没发现判断写错了。 改成如下代码就能得到预期的 64 分了:
vi c(k+1);
vector<vi>a(k+1,vi(n+1));
bool XZA=true;
for(int i=1;i<=k;i++){
cin>>c[i];
if(c[i]!=0)XZA=false;
bool sf=false;
for(int j=1;j<=n;j++){
cin>>a[i][j];
if(a[i][j]==0)sf=true;
}
if(!sf)XZA=false;
}真好。
这样我就能 100+64+30+8=202 了,这样我就上 200 了,这样我就能 7 级钩了,这样我就不至于这样了,这样我就……
于是还是来写游记。
去年 死磕 T2 最终只有 100 分 的结果让我今年选择求稳,如果我不着急去打后两题的暴力,也许就能再优化下 T2,我觉得把复杂度中的 $m$ 优化成 $n$ 的这个思路是我可以秒掉的,但我压根没有去细想,也许再想 30min 就能把 T2 A 了吧?感觉这次比赛完全没把我的水平发挥出来。
170 也可以了,这次比赛只挂了 32 分,最好的消息就是我还有明年,今年也能去参加 Never gOnna gIve you uP,我要往 1= 冲一冲,最好能逃练129。
好像我们 3 班只有我一个 S 1= 的(悲
但这是我的热爱,我要继续走下去,而且我不想练129。可我现在是没有放手一搏的勇气和底气的。
我灿烂的人生才过了不过 5000 天(其实是 4993 天),可我竟不再有 5000 天的时间去试错了,可能连 1000 天都难有。可这是我的人生啊!我竟是因为我想做我热爱的事而去做我不热爱的事,虽不算讨厌,但社会为何有如此秩序?以我轻浅的学识想来,一定是背后连成一片的利益吧……
你说的对,但是锈湖真好玩。
%%%
所以S1=到底多少分
所以Never gOnna gIve you uP线到底多少分
说说你对“我竟是因为我想做我热爱的事而去做我不热爱的事,虽不算讨厌,但社会为何有如此秩序?以我轻浅的学识想来,一定是背后连成一片的利益吧……”这句话的理解(