noip2023
2023/11/3
day-14了,想和csp赛前一样发一条day-14的QQ说说,又觉得没啥意义,遂摆。
11/4
上午做ma出的模拟赛。
T1开始以为是神秘的图上dp,后来发现是神必的贪心。瞪眼30min无果后开始手捏样例,发现每个点所在行或列只要选一个点就行,那么要么每行都选最小点,要么就是每列,二者取min即可。
T2,给定序列,点带权,每次询问给定起点\(p\)和系数\(k\),跳到\(p+a_p+k\)的位置,求多少次跳出序列。一开始想到倍增,发现\(k\)的存在很碍事,造样例的时候脑海里观察到\(k\)很大的时候很快就能跳出去,突然意识到可以往根号分治想。考虑\(k\geq\sqrt{n}\)时暴力做,否则对于\(\sqrt{n}\)个\(k\)预处理每个点跳的次数然后\(O(1)\)查询即可。
T3,ma出的大假题,直接哈希就完了。
T4原题,莫队暴力求绝对众数就行,甚至不求也行。
AK了,rk1。
下午timi。
晚上做神必数学+数据结构题,想到大约两点多,神智依然清醒,肠胃不好一直很难受,没法睡觉,遂摆。
11/5
Ruanbj说他csps50pts,我寻思他T1输出81是30保底,那他T2输出随机数拿了20分???什么人品啊。但他总算是能去noip了。当时得知他保底30分的时候还很惋惜,想着去年noip差点省一的人今年要去不成noip了,又少了一个伴(Jiaosy 30pts,Congzy T1爆零这样的是肯定没戏了)。而现在也不用管他咋拿的50pts,好歹总算是能过,期望他在noip正常发挥吧。
Guzf、Peihx陆续问我当下该怎么备考。
事关两人的命运,其实我不敢妄下断言。Jiaosy一个月前每天非常刻苦地问我题,但大多是数据结构。这个东西其实练码力固然,但他那个级别的数据结构题其实没什么思维含量,也不会在考场中遇到。现在想来,要是别被他牵着走,及时让他改变备赛方向,练点经典trick,基本模拟,或许不会出现csps的惨剧。不知道应不应该把罪责揽到我自己身上。但无论如何都太迟了。
官方说30+的有noip名额,又说推荐名额是25-,包不包含呢?不包含,那25~30岂不是没被定义?包含,那30分几乎人人都能拿到,人数岂不爆满。官方数据说720多人有名额,除去初中生,大约算了一下,或许30分有点希望?不管了,其实这本和我无关,为什么我总这么在乎别人呢?或许是想让whyz这个破烂学校早点出成绩吧,确实,Jiaosy要是能来noip的话基本能创造一个省二,甚至省一。
回到Guzf和Peihx问我的问题,我想让他们拿高分,而又不敢轻易舞弄二人的命运,害怕重蹈覆辙,因为我的原因葬送了二人一年的心血,如履薄冰般多方面思考并给出答案:做洛谷月赛的红题!想来,这是短期内快速把思维和码力共同提升的最好方法了。
继续timi。
被waauto骗去做wsg出的联测,T1很一眼,总感觉在哪见过但我从来没写过。开int128。
T2数数题,赛后一想很简单,赛时简直弱智,完全无处下手。数数题太差了,赶紧补!
T3T4毒瘤数据结构,摆了。
T3,给定树,给定若干特殊点对,点对带权,每次给定\(u\),\(v\),将其路径上的点所在特殊点对的权值减\(z\),每次修改后权值还非负的点对将产生贡献。std是主席树硬上,还有整体二分。但waauto提供的对询问分块很巧妙:
你对每个点对二分找它变成负数的时刻,但很难迅速检查当前时刻的权值,但显然有\(O(n)\)的树上差分,总复杂度\(O(m(nlogq+qlogq))\)。而你依次考虑每个修改,又很难落实到每个点对上,因为可能有的点对会很靠后才变为负数,而你每次都带着人家乱跑,做了很多无用功。
而想到这里已经可以发现树上差分是解决本题的利器,而其瓶颈在于每次dfs花销太大,考虑根号平衡。将修改分为\(\sqrt{q}\)个块,依次处理每个块的修改后跑一遍差分,若某个点对在这个块内被改到负数,那暴力跑这个块,看是第几个询问使其变负。此时只需判断点对中的点是否在\(u\),\(v\)之间即可,需要求lca,采用\(O(nlogn)-O(1)\)的预处理st表来维护即可,总体复杂度\(O(nlogn+\sqrt{k}(m+n))\)。至此本题解决。(更值得一提的是,waauto在题解中认为gcd和lca是一个东西,并提出有\(O(1)\)求gcd的方法)
11/6
研究cspsT2的只含01的部分分,就是你把偶数位取反,就从消除相同的变成了消除不同的,然后括号序列做就行。太逆天了。
11/7
补一中校赛题。确实都是好题。
T1&T3,01背包模型,对每个物品求出将其价值增加多少能够使得其一定在最优方案中,T1 \(n,m\leq100\),T3 \(n,m\leq5000\)。T1显然就枚举ban掉每个物品,跑01背包,那么目前\(dp\)数组里存的是不考虑当前物品的情况,然后考虑我们决定这个物品一定被选的就是使得\(dp_{m-w_i}+v_i>dp_m\),缺多少补多少就好了,不缺就是0。
然后你发现你每次就只有一个物品有限制,每次跑一整个01背包很浪费,从此想优化。正着做一遍01背包记在\(f\)里,倒着做记在\(g\)里,枚举ban掉的物品,这样就是\(f_{i-1}\)和\(g_{i+1}\)合并,但你要枚举总容积还要枚举其中一个包的容积,单次还是平方级别的。然后借鉴下T1,其实我们只关心\(m-w_i\)和\(m\)这两个容积,那么转移就变成了\(O(m)\),总体就\(O(nm)\)解决了。
T2开局拉到最左边,然后往右挪,把偏移量排个序模拟就好。
T4数学题,让\(t+\frac{d}{v+ta}\)最小,直接上均值不等式就行,因为忘了判断一正二定三能等WA了一个点,确实是不用则废。
T5,求所有区间中的元素两两异或和的和。拆位,每对\(i,j(i<j)\)在第\(k\)位的贡献就是\(i\times(n-j+1)\times(a_{i_k}\oplus a_{j_k})\times2^k\)。其实就是算下有多少个区间会包住这俩点。
T6神秘构造题,没准又是从海淀高考模拟题里抠出来的。给定圆桌,每轮可以交换邻位,但一个人只能换一次,求一个方案使得在n轮之内每个人分别和其他所有人做过邻居。手玩一下发现轮数恰好是\(n-3\)。方案就是乱搞:第一轮从2开始换,第二轮从3开始,第三轮还是2,类推。很神秘,大概就是这次让你这一侧做贡献,下次让你另一侧做贡献。
T7简单递推+构造,T8就二分+最短路,T9神秘构造题。
得知要去临沂考noip,全季我来了!
11/8
继续一中校赛,T10无向边重定向一手跑拓扑。T11求最少调整几个点的权值使得序列以p点为单峰向两侧递减。左右各跑一遍二分优化LIS,而你考虑你可能还需要修改p点的权值,条件就是两侧LIS的结尾至少有一个比你高。T12简单模拟,考虑把每个学生分开讨论能省却很多不必要计算。
11/9
报名和贝塔一起去临沂。在名单里发现了jiaosy以及另一个30pts,问了老板才知道高中30分就有名额,那这csp对大家基本是无关痛痒。只不过congzy爆零了。大概,有了上次失败的经验,他们这次一定会发挥得更好吧。希望一周后我也别重蹈覆辙。
做毒瘤数据结构做麻木了,于是去学数数。学了二项式反演,一直想自主弄明白那两种形式的组合意义,想了2h无果,看了别人博客才懂。
11/10
做二项式反演题单,发现屁都不会,遂摆。
11/11
开了个COC的新号开肝。
11/12
补洛谷月赛题,前三题都很可做。去体检,鉴定为左眼175右眼150。
11/13
去青岛面基。和hanyt,sunyb住在汉庭,酒店挺舒服的。
11/14
模拟赛,有两道计数题,其中一道大脑抽搐了把本来乘起来就行的东西弄成了乘方,分挂没了。
11/15
做数数题。
11/16
做模拟赛。怎么会有T2T3T4都放数据结构的啊。T3无向图重定向,使得满足所有\(s_{i}\)可以到达\(t_i\);考虑在同一个边双的话始终可以到达,缩点跑树剖就行。赛时因为认为树剖不是提高算法,始终觉得又正规做法耽误了好久。
11/17
找sunyb下了盘棋,潘老师就带着我们去平邑了。
下午到站,办入住的时候还想着让服务员给我开去年的房间,但瞥了一眼貌似没打扫出来就算了。火速速通了一把去年的经典打卡点:自动售货机、核酸检测点、餐厅之类。二楼会议室貌似在装修进不去。集合在sunyb的房间和他俩点了份烧烤,又打卡到了送货的机器人。烧烤名字叫酌暮袅好像是,我把袅看成了枭,还寻思这名字怎么这么怪。
大部队来了,我们上楼吃饭。电梯里偶遇了整个一中的人,一群人集体喊我名我都懵了。吃饭完了就润去试机。只有我带了身份证,其余人都拦外面了,sunyb考场老师比较仁慈放他进了。
试机发现不知道怎么开扩展名,找了半天找不到,问旁边老哥回答的也很含糊。很怕变成.cpp.cpp侠。问了一圈才问明白。
晚上回去在sunyb屋里和anmx,ruanbj他们聊了会儿。唉,最后一晚上了,有点悲伤。
11/18
开考看T1,先考虑暴力去排序比较,复杂度n2logn。感觉过不去,用桶排序优化,这下好,成26n2了,更慢。发现其实只和逆序的最小值比较就行,26n。复杂度瓶颈在输入。
T2,以为是什么建图跑缩点,但是赋值有顺序,后来的可以盖住原先的,就没法判断。其实要是往这个方向思考,只去研究最后一个值,就很明朗了。但没有及时意识到这个问题,2h过去,心态全无。
T3写了个假的贪心。考虑其实就是你每个点可以覆盖一些区间,你要分配这些区间,使得随着i的增大,其对应区间依次增大且两两不重复。记录当前覆盖了哪些位置,每次先向右拓展,拓展不了就向左找最右边的合法位置。但可能我这个点的合法位置在之前点合法区间左端点的左边,于是就不合法。没考虑到这个点,导致1,2,4样例过了,第三个样例有少量的点应输出0实际输出1。
T4本来一眼32分贪心,由于作死回去调T2心态炸了,回来就只会8分了,直接摆了写都没写。
废了。
回来的一路,大家都很开心,我开心不起来。但熏陶渐染之下,我也开始加入jiaosy,guzf他们的wzry了。短暂的快乐让我暂时忘记了比赛的悲痛。小图灵数据出来了部分,我T1100分很稳,T220分也没挂。虽然20%的人200+,我这个分全省也就400名,但想开点,至少是明年还能去SDOI,至少是有个兜底的分数。至少,大家都超常发挥:
jiaosy一雪前耻,爆切了T1,guzf稳稳120pts,hanytT4写了44分,基本得分在200左右。liuyd有70pts,sunyb?好像T1也切了,后面有不少分。但是anmx切了T2,但一顿调试,挂成了20pts。痛,在全季餐厅听说他切了T2的时候,我还高兴他能打出这么逆天的成绩。但是,没有但是了。
在中途休息区一起吃了点正新鸡排。hanyt和sunyb来青岛的那天晚上也在房间里点了那个。其实,其实在青岛的那五天有特别多快乐的事情,但我真的没心力写了。
或许是,每天hanyt抱着电脑去吃饭;或许是,hanyt做着做着题就开始“中国人认为:”;或许是,本着最短路径的原则每天去贝塔校区都招摇过市横穿借道星巴克。或许是阴森的员工通道,或许是每次这俩人都走得很慢,我走几步就得回头看看有没有落下。或许是一起在酒店睡过头。或许是在比赛时总能听到门外商场放的钢琴曲,还总是《月半小夜曲》。或许是一起吃疯狂星期四。或许是ZM老师他爹看见我打COC,或许是由于莫名其妙的原因没法被贝塔的门识别出来。或许是一起去球场锻炼。或许是hanyt头顶开出了一朵鸡冠花。或许是大城市的人不喜欢等红灯。
upd:还有sunyb总是把房卡锁房间里
在全季的这个晚上,本来想回味一把在这洗澡的感觉的,但怕晚上睡不着觉就没敢这么干。呵呵,早知道noip烂成这样,不如头天晚上就开始摆烂。
云斗学院的T3有高高的55pts呢,CCF一定要再高点啊!
有什么用呢,又能高多少。两次比赛,都徘徊在省一线。
或许,我如果没下这么大功夫,还是拿去年那个心态去考,或许会好得多。甚至,或许早在去年就收获省一,满载而归了。
guzf在车上说有点不舍,想继续集训,想明年再来。anmx也发帖说不想回去上晚自习。我似乎渐渐觉得结果不是那么重要,最可爱的还是和一群志同道合的人结伴前行的奋斗历程。
peihx和liubc给我抱了一大摞卷子。好像每次来全季都是分卷子的集中场所啊(悲
liubc问我打不打算写这么多卷子,这真是一个值得商量的问题,容我下周仔细想想。

浙公网安备 33010602011771号