[2024.11.27]NOIP全真模拟赛
NOIP 前最后一场信心赛,把信心打没了。
为什么 y0 也是函数名啊!!!
为什么两个小时想不出来一道小学奥数题啊!!!
赛时
开 T1,发现是一道在洛谷上无数次翻到的原题。每次我看到这题面和自己第一次暑期集训时就已经有的的 AC 记录后就会选择跳过因为我觉得太简单了
我知道答案是一个 \(\mathcal{O}(1)\) 的式子,并且只有四则运算和 \(\lceil x\rceil\) ,并且不算太长。
剩下的就不知道了。于是我开始推,推着推着我发现这道题远没有我之前以为的那样简单。上个厕所回来看见有人已经开始拍 T1 看 T2 了,瞬间慌了啊。
没办法,先写个对拍出来,然后一个一个试自己推出来的式子。我一共造了 13 个式子,其中有 6 个过了第一个样例,4 个过了自己设计的样例,0 个过了第二个样例,0 个过了拍。
过了一会小 L 宣布大样例是假的,于是我立马回去检查自己的暴力是不是假了。试了很多发现很真,所以只能是所有式子都不对……
上个厕所回来思如泉涌,接着造了 5 个式子,其中有 5 个过了第一个样例,5 个过了自己设计的样例,0 个过了拍……
已经一个小时了啊,不想管了,先扔个暴力,去看 T2 吧。
T2 看懂以后注意到 \(10^3\) 的数据范围,我意识到这道题应该是 BFS 之类的合法状态拓展。简单想了想发现去考虑两根柱子的话很复杂,既然题目只关注了重叠点,那我不妨直接去考虑这个点,看它能如何移动。具体的,可以先预处理出每个点向上下左右分别能移动多少格子,然后比如现在你要把重叠点从 \((x,y)\) 移动到 \((x,y+1)\),那你只需要满足 \(\min(U_{x,y},D_{x,y})+\min(U_{x,y+1},D_{x,y+1})\ge len_{竖着的柱子}+1\) 就可以了,其它同理。
写写写,好,不过样例。等会,题目上先输入 \(y\) 再输入 \(x\)??下标还是从 \(0\) 开始??这题谁出的
改完以后过不了第三个样例,难道是我写假了?然后改了好久才发现 \(n\) 和 \(m\) 也是反着读入的&*(@!#&¥
忍住气,上个厕所,去看 T3,把时间的条件看做一个边界,直接去构造最优方案。一开始以为只需要找到从 \(1\) 到 \(s1\) 和 \(s2\) 的最短路,标记一下去重就可以了,但是会出现先走到 \(s1\) 再走到 \(s2\) 最优的情况,所以不对。那是不是类似密室那道题,分讨一下就可以了啊?但是画了画发现每种情况都有对应的 hack 数据。
那既然不能找规律,那就发挥计算机的长处,上枚举,思路瞬间就通畅了。题目就是让我们保留最小的使三点联通的生成树,那我直接枚举树根不就可以了?具体的,先分别从 \(1,s1,s2\) 三个点开始都做一次单源最短路,然后枚举根,判掉 \(\gt t1,\gt t2\) 的情况,更新答案 \(\min(ans,dis_{1,i}+dis_{s1,i}+dis_{s2,i})\) 即可。
没什么细节,但是写完以后才想起来数据范围是 \(10^3\) 级的,好在顺利地过了大样例。
看看时间 \(11:10\),如果待会能把 T1 过了,再搞点 T4 的部分分,那这场不就真成信心赛了?这么良心么?
心情很好,先用 \(20min\) 写完了 T4 的指数,然后转过头来全力攻 T1。
我又推出来了 3 个式子,发现有两个过拍了!很兴奋,把对拍的数据范围改大,然后就又不过了……
实在没办法了,我挑了一个正确率最高的式子,然后判断如果暴力时间快要超的时候就是用这个式子,卡卡时间,就交了。
感觉我 T1 的写题过程像进化论。
赛后
吃饭的时候发现其他人好像都会 T1(我是废物
T2 问了问好像过的人不是太多,那我是不是有优势了啊?
回机房,看榜,然后发现 T1 多一分都没骗到,而且 T2 挂成了额……怎么蛋了!!!
迅速打开,一个巨大的 \(\color{red} Compile~Error\) 映入眼帘,然后我发现我的代码里使用了 y0,我才意识到不止 y1 不能用,y0 也不行……改了变量名以后瞬间过了。
T3 没挂,T4 蛋了。这打的都是些什么啊……
这场其实如果赛时 T1 会了,赛后 T2 没挂,对我来说还真算得上是信心场,可是……
不过我之前确实不知道 y0 也不能用,在正式赛前发现这个问题是很好的。
还有就是那个数学题,这纯粹是我思维能力欠缺的问题,真的,没别的,我赛时用了净时间两个小时来做这道题,可是呢?
只希望 RP 守恒吧。++

浙公网安备 33010602011771号