2019寒假小记

Preface

菜鸡HL终于艰难地熬过了初三的一个学期迎来了寒假。

但是由于某些不可言说的政策问题所以他要没高中读了,只能开始准备中考。

所以这个寒假可能并不像想象中的那样可以大量刷题好吧题还是要做的

希望\(ZJOI\)\(Keep\ good\ luck\)吧,进不了前\(48\)就要考虑退役了。


1-26

早上搬东西发成绩单听老杨浩BB,搞到\(10\)点钟才放。

ZLX很早就走了,心想有点不对,肯定是去机房了。

所以推测HW的人都去机房了,于是我决定也去机房玩玩。

把东西拿到老爸车上就直接去EZ了,果然如此。

拆了键盘坐到团长边上去了,然后早上开了一道LCT题先:

  • Luogu P4299 首都 题目就是动态求重心吧,不过我太菜了只会\(O(n\log^2 n)\)的做法。首先我们考虑用LCT维护每一个联通块的重心(这个找出来直接给它makeroot一下就好了),然后连边的时候考虑启发式合并,这样就可以直接暴力找出路径,结合重心的性质扫一下就好了。

下午回来虽然很困,但是还是去复习了下多项式,然后随了一道题:

  • Luogu P4841 城市规划 考虑构造一些多项式,设\(f_i\)为简单无向连通图数目,\(t_i\)为无向图数目。那么显然有\(t_i=2^{C_i^2}\)。然后容斥可以得到\(f_i=t_i-\sum_{j=1}^{i-1} f_j\cdot C_{i-1}^{j-1}\cdot t_{i-j}\),拆开后移项发现是个分治NTT的形式,直接做即可。\(O(n\log^2n)\)的复杂度被\(O(n\log n)\)求逆求对数吊着打。
  • Luogu P4560 [IOI2014]Wall 砖墙 开始准备码ODT的,想想这个线段树下推标记的过程好像也不难,维护两个上下界标记,区间修改直接分情况讨论标记修改即可。最后直接遍历一遍即可。

晚上写一道雅礼集训(貌似没有按顺序做,跳了两题),开始本机过了然后交上去RE,后来过了一会儿再交就过了?

  • LOJ #6038. 「雅礼集训 2017 Day5」远行 首先由一个结论,一棵树内离某个点最远的点一定是直径的某个端点(可以反证法证明),所以我们可以用并查集维护直径的端点,然后合并联通块的时候套路讨论一下即可(肯定是端点之间接起来)。不过这里的距离是动态的所以要用LCT维护。

我好弱啊一天就做这么点水题。。。


1-27

早上起得晚,炉石打了好久掉了一颗星看来这个月上不了传说了

到机房开始看了下以前**来的课件,找了一道随机+LCT的题:

  • UOJ #207. 共价大爷游长沙 首先一个结论:一条路径\(x\to y\)被当前所有的路径经过,当且仅当以\(x\)为根时,所有路径的端点都恰好有一个在\(y\)的子树中。所以我们考虑给每个路径随机一个权值,每次将两端异或上这个值,然后用LCT维护子树权值异或和即可。开了\(unsigned\ long\ long\)后稳的一批。

要吃饭的时候学了下Minkowski sum(闵可夫斯基和),下午就找了一道板子可怜题做了下:

  • Luogu P4557 [JSOI2018]战争 和之前HHHOJ上一道三角形重心的题目很像,考虑令$a\in A,b\in B \(,则每次询问向量\)v\(是否存在\)b+v=a\(,因此\)v=a-b\(,我们直接把\)b\(坐标取反求出闵可夫斯基和然后判断是否在这里面即可。点在凸包内的判定可以结合```lower_bound```做到\)O(\log n)$。

然后又是复习多项式,从**来的课件里找了一道FWT裸题:

  • CF663 E. Binary Table 鬼知道Luogu上竟然没有这题,考虑到行数很少,我们可以直接状压一下然后搞两个多项式,通过异或的性质进行变形之后就变成了异或卷积的形式,直接FWT即可。注意开long long)。

下午+晚上写了一道CCF的题,因为没有清空TLE了好多发:

  • CODECHEF GERALD07 Chef and Graph Queries 考虑一个离线的做法,我们直接按右端点顺序处理,这样就可以一条一条地加边。考虑搞出森林,这样只要求出范围内树边的条数就可以知道答案。由于编号越大对后面的可能影响越大,所以维护边的编号的最小值,每次成环cut掉再link上这条边。最后用树状数组统计答案即可。

明天争取多写点题?


1-28

炉石打了半天掉回5级0星了。这个月传说无望了啊

早上起得比昨天早了点,但是还是迟到了一会。

早上又开始翻**来的课件,发现一道DP水题:

  • BZOJ 4300: 绝世好题 这SB题吧,容易想到设\(f_{i,j}\)表示前\(i\)个数中二进制下第\(j\)位为\(1\)的最长长度。仔细想一下发现第一位都可以直接省掉,每次爆枚二进制位直接转移即可。复杂度\(O(n\log n)\)

然后又是雅礼集训,而且这题之前Manchery上课讲过:

  • LOJ #6036. 「雅礼集训 2017 Day4」编码 每个串只有一个?,那么其实也就只有两种取值。那么题目显然2-SAT。直接建边的复杂度是\(O(n^2)\)的,那么考虑数据结构优化。由于这里的不合法关系是前缀,所以我们很容易想到用Trie来维护,同时树上用前缀优化一下即可。

LCT题单,看到一道套路的SB题:

  • Luogu P4234 最小差值生成树 这个套路很经典吧,两个边界的话考虑确定一个。把边排序后枚举最大边权,那么如果成环的话直接删掉环上的最短边即可。把所以树边用平衡树(SB才手写,直接上multiset)存一下每次取最小值即可。

中午回来不知道做什么,看着智推准备写一写树套树,发现这个东西其实根本不用学,自己YY一下就可以了?

  • Luogu P3332 [ZJOI2013]K大数查询 仅有的值域线段树套区间线段树的题目了吧,考虑每次在外层的树上二分缩小答案的区间,然后内层树维护数的个数即可。注意要动态开点,而且空间好像是\(O(n\log^2 n)\)的。注意你如果一直被卡了那么可以需要给内层树写一个标记永久化

然后又是刷LCT题单上的题,又是套路题一眼秒:

  • UOJ #274. 【清华集训2016】温暖会指引我们前行 题面已经明确指出那个鬼畜的路径要求其实就是让路径上最小温度最大,那么我们显然直接维护温度的最大生成树,每次查询直接查路径权值和即可。维护套路的要死,每次判断若成环则找出环上的最短边然后判断是否替换即可。用LCT动态维护即可。

晚上开雅礼集训,然后被神仙DP题虐了3h,最后下了近10组数据才过了。

  • LOJ #6037. 「雅礼集训 2017 Day4」猜数列 首先看题面我是准备模拟退火的,正解是超级神仙的状压DP。设\(f_{l,pl,r,pr,state}\)表示正在满足向右走的线索是\(l\),前\(pl\)个字符已经满足,正在满足向左走的线索是\(r\),前\(pr\)个字符还没有满足,还未被考虑的线索集合是\(state\)。枚举是否填数以及切换线索即可。要预处理很多东西,并且细节巨多。

1-29

由于今天就不用去学校了,所以一觉睡到了快10点才起来。

而且今天本来就准备放松一下现在是寒假啊大哥!,结果暴雪日常崩了,然后下了好久的说

辣鸡火绒墙了战网,结果一个早上啥也没干成,早知道就去打Galgame了

中午觉得一直颓废也不好,所以勉强做了道雅礼集训

  • LOJ #6039. 「雅礼集训 2017 Day5」珠宝 \(10^6\)个物品的\(0/1\)背包?观察题目发现容量很小,所以考虑一个DP:令\(f_{i,j}\)为选了前\(i\)个物品容量为\(j\)的最优价值。所以容量相同的物品显然选价值大的。把每一次\(i\)的转移单独拿来看,发现我们如果对\(i\)同余物品分组就可以得到一个具有决策单调性的式子,直接用分治做可以达到\(O(\max c_i\cdot n\log n)\)的复杂度,实际上远远达不到。

下午回了老家,那奶奶的手机开无限流量当WIFI耍话说我的手机连流量都没有的说,开了好久的炉石

然后和表弟来了回元气,结果第一把就通关了大雾,吃完饭就出去逛了下,回来看什么好声音,法律剧到8点过论无聊的最高境界

晚上坚持刚炉石,最后想着这一天太颓了逼自己写了道题:

  • Luogu P3515 [POI2011]Lightning Conductor 决策单调性的裸题?把式子移项后就是求\(p_i=\max (a_j+\sqrt{|i-j|}) -a_i\),那么只考虑\(i<j\)\(i>j\)直接翻转一下再做一次即可)。发现\(\sqrt {x+1}-\sqrt x\)在严格意义下单调递减,所以这个DP具有决策单调性,用分治优化到\(O(n\log n)\)即可。貌似分治很好写所以我经常写

明天早上还有比赛,希望不要翻车吧好不容易打回Rank3的说


1-30

早上被老妈的电话叫醒了,感觉药丸。

起来随便洗了下脸就准备开打了,感觉2300是个不错的目标?最近争取打上去

8点30还算清醒地坐在床上开了:ZJOI2019模拟赛(七)1.30,刚看完题目名发现画风不对啊

然后发现是度教的题,感觉GG

T1看起来很清爽,想了下woc这个东西是个多项式开根啊,但是我连板子都不会。

然后发现还要模数\(10^9+7\)的情况,岂不是要任意模数NTT,弃了弃了。

手速码了个暴力开始找规律,看到\(a_0=a_1=1\)的那个\(1,1,2,5,14\)的东西就知道是个卡特兰数

然后是\(a_0^2=a_1\),取\(a_0=2\)发现是\(2,4,16,80\),woc不是就乘上一个\(2^{i+1}\)么。

算了下部分分\(50\)吧,不管了做别的去。

T2诡异的博弈题,还算有一点经验的我就直接弃了这题。

T3交互题,乱搞貌似是我的强项?最后事实证明好像是这样

首先读懂题意是个人就能切出\(9\)步的暴力:先花\(4\)步给两个长度为\(3\)的排个序,然后\(3\)步取出前\(3\)小,剩下\(3\)个花\(2\)步排即可

但是我们发现:这题的测试数据其实已经发下来了,所以我们可以面向数据编程想用正解过题的朋友们就别来找我了

是个人分析一下都知道数据全部都是按全排列的顺序给出的,所以如果我们知道了第一个排列后面就可以直接用next_permutation做了。\(0\)步求解怕不怕?

那么其实我们只需要讲\(20\)个开头分开来即可,这个随便判下即可(我比较菜有些点花了\(6\)步判。。。)

但是千万注意不要算重了,反正我比赛的时候有个小细节忘了改只有\(90\)分,赛后搞了搞就过了。

正解貌似是个搜索+剪枝,感觉根本没往这方面去想啊,直接当数学题来做?

但是中间OJ炸了所以后来T2的暴力和修改过的T3都没有交上去,不过还是保住Rank1涨了一波分。

接下来就要婊一下ZZ火绒了,自从上次我把U盘插到电脑里激活了它之后这两天就很嚣张

先删了QQ,然后是炉石,LOL,还把一些Galgame我的死馆弄炸了,但我说这是为了防止我颓废我忍了

TMD今天比赛的时候把我Dev c++VSCODE全删了。。。最后我是拿Luogu IDE打的

结果感觉以后就要和炉石说再见了它通过一种神奇的方式让我根本无法重新下载

看来寒假上传说的目标要废掉了,所以计划变成了打Galgame?~~话说我最近一个月好像连NW(Noble Works)的一条线都没打完。。。

所以让我想想,大图肯定是要打的回复一下被死馆挫伤的元气少女领域看画风感觉海星近月都玩的跟舒服,凑哥肯定不会让我失望的

接下来可能是一些剧情向的作品,恋樱看着不错,然后据说纸魔很好玩,还有9nine,终焉之花口味向调色板转换?

其实我还是喜欢废萌,玩Galgame主要还是图个开心吧。

所以说了这么多就像放屁,寒假作业一字未动,下午还开了几把元气,有又通了好几次关。。。

晚上回来看了部《我是证人》(辣鸡电视少数不要VIP就可以看的正常电影,感觉海星。

杨幂的演技好像提高了很多(和之前不是一个档次的啊)。一段又一段的蒙太奇幻影,让我恍然隔世。

然后发现今天竟然比昨天还颓废,就又逼着自己去写了道DP码量小

  • Luogu P4072 [SDOI2016]征途 好久没写斜率优化了,自己YY了好久才过掉。考虑DP,令\(f_{i,j}\)表示前\(j\)个数分成\(i\)段的最小代价。转移很显然往前枚举一个点即可。然后平方的话拆开来就是个斜率优化的套路了,直接单调队列维护上凸壳即可。

1-31

看了下之前尤其是前两天的博客发现其实这篇文章可以改名蒟蒻的寒假颓废记录

所以今天决定认真一点flag,不过由于没有比赛所以强行睡到10点。

由于昨天炉石被删的惨痛经历,所以一直在尝试修复炉石

最后找到了隐藏的数据文件夹,删了一堆数字签名之后重装成功

最后爬到了4就没有然后了,准备明天领了低保就合一套奥秘猎(只缺一张544)

下午炉石+打元气,日常通关简单的一批通过率超过\(50\%\)

下午难得地和爷爷去打了下乒乓球,最后当然还是赢了。

晚上回来撸作业,结果发现自己根本不想写。。。虽说一本英语一定要写完

然后日常逼自己写题(一日\(6\)题变成了一日\(1\)题):

  • Luogu P4065 [JXOI2017]颜色 读懂题意就可以做了。发现要求的其实是满足区间内所有数都没有在区间外出现过的区间个数。那么我们枚举右端点,合法的最远左端点显然可以用维护下。但是这样又会有在左边的不合法区间被计算,那么我们直接线段树区间赋值把不能放的地方赋成\(1\)即可。

明天比赛希望能破\(2300\)flag


2-1

早上睡到8点多,然后就是ZJOI2019模拟赛(八)2.01

三道可怜题直播凉凉。T1一眼不可做写了暴力滚粗。然后先看到T3

读了下那个迷之题意之后发现就是个树的同构判断?

爆搜+树Hash跑一波\(n\le 7\)打个表,然后开始YY式子。

呦还不让OEIS,我偏要~~,然后找到发现需要多项式自然对数,直接自闭。

后来自己开始YY暴力,是个类似约数性质的前缀和转移之后再容斥,复杂度好像是\(O(n^2)\)

惊喜写一发,\(4\)很稳的过了但是\(100\)没过,时间已经过去3个小时了,所以回头看T2

看完第一个想法:分块,然后噼里啪啦码了一个延时标记的分块,还感觉复杂度对的不行。

结果写完对怕后发现根本跑不了,直接自闭。

再看T3,把小点的数据打了个表和OIES一对,woc我好像是对的。。。

然后天真的认为样例错了,所以自信一交。

然后最后尴尬的\(10+20+0\)收场,Rank2被狂踩(一堆Rank2的)

现在觉得T3题意可能看错了,到时候再想想。

下午炉石新赛季,分了哈卡合了奥秘猎,然后3连跪。。。

然后又是日常开车时间,元气来了几把(怎么又通关了),还发现有什么神奇兑换码,骗了\(15000\)金币买了牧师玩玩。

然后又是逼自己写题,由于早上有题面用到了树Hash这个知识点,所以就去补了下(比赛的判同构直接暴力枚举了):

  • Luogu P5043 【模板】树同构([BJOI2015]树的同构) 板子题不解释。其实树Hash讲究的就是让所有点不因为编号的问题而产生不同。所以Hash的方法有很多。这里写了随机权值法,求出每个点为根时的Hash值后直接暴力判断即可。
  • Luogu P4323 [JSOI2016]独特的树叶 Manchey以前上课讲过?首先求出\(A\)树中每个点为根时的Hash值,全部扔到set里。然后在\(B\)树中枚举叶子节点,然后判断剩下的Hash值是否在set里出现过。由于为了操作方便这里的Hash写成了异或+子树大小判重的形式,这样比较容易转移。 sol

感觉树Hash就是一个随便搞的东西?方法都可以YY


2-2~2-7

由于要过年了,所以OI方面的训练就减少了些。

同时还要苦逼的做作业,所以这几天几乎没怎么摸键盘。

被表弟骗去重下了某荣耀玩,发现200多天没登陆了。。。

然后开车回了铂金,准备寒假结束前打回钻石。

打牌也赢了挺多钱的,这个就不说了,准备攒钱买手机?

7号晚上和老爸老妈去看了《流浪地球》,超级震撼。

感觉这个集体式主义的英雄电影比某国的个人英雄主义高到那里去都不知道了

算是开启了中国硬科幻电影的大门吧,希望这样的作品能再出一些。(flag:《三体》准备上马)


2-8

woc时隔多日又有比赛,长时没练慌得一批。

拿题之后发现T1一眼不可做,然后转T2。首先想了个暴力DP,能过前两档分数。然后本来准备容斥的,一看也没多多少分,所以转头写\(k=2\)\(\phi\)前缀和,然后直接一发杜教筛艹过所有,算了下55pts就不管了。

T3一眼点分,ZZ套路,就是聪聪可可的plus,直接子树统计出长度膜了以后的个数就好了,然后排序扫一下,1个小时不到就写完了,拍了拍没什么问题。

然后看T1,前5分送,然后就不会了。本来想了个\(30\cdot n\cdot 3^n\)状压DP,但是感觉不好实现就弃了。

woc我为什么没有去写记搜,而是想强行转移

最后\(5+55+100=160\)收场,有两个神仙A了T1,T3。我真是太菜了

下午上了下马,然后回老家吃晚饭,吃完再上来

来来回回3h内有2h在坐车,结果睡了好久

晚上写了一道概率期望题:

  • Luogu P3830 [SHOI2012]随机树 二合一。第一问直接利用期望的线性性,想简单就好了。第二问直接用整数期望的公式\(E(x)=\sum_{i\in Z^*} P(i\le x)\)算,然后算概率直接DP,转移的时候枚举左右子树的叶子个数即可。

然后冲了百度会员,下了恋樱,二话不说,开车!(快两个月没打Gal了)


2-09

早上还是打比赛,由于连掉两场心情郁闷。所以希望翻盘flag

T1开始没想法先放着。看T2什么都没想,网络流冲一发。然后发现边数\(n^2\)

码个线段树优化建图?太烦有没什么效果。然后只会Dinic的我发现过不了\(1000\)那和暴力有什么区别

后来信仰加了个当前弧优化,又把数组拷贝换成了memcpy,后来发现好像可以卡着时限走过就没管了。鬼知道30分这么好拿

T3本来想写\(O(n^3)\)的算法的,然后一看这个要补集转化要用\(2^n\)减去重复的部分,然后GG写你妹的高精

\(O(2^n)\)大爆搜手动滚粗。只好看T1。

想了下\(k\)这么小来个分类讨论怎么样?然后\(k=2\)显然只有偶数符合,\(k=3\)记得一场ACM的签到题有这个结论是只有\(3,4\)的倍数符合。

emmm。。。好像可做!然后手动考虑。。。

最后在疯狂地手玩之后宣告放弃,写个爆搜开始打表。

但是我技不如人,爆搜跑到三十几就跑不动了,然后又看不出来什么东西凉凉

后来一看比赛还有2h,不管了,这个东西可以生成函数搞嘛,那我直接FFT艹上去就好了吗。

写了下发现点值可以直接快速幂,但是空间也要留足(还要注意清空),玩了好久终于貌似正确了。

一口气打到\(2000\),但是看得脑壳疼,最后发现我就是个ZZ,直接写个程序跑一发就好了吗。

然后打表出了那些数,分分钟容斥解决,但是发现复杂度太高,加了个优化快了十几倍但好像还是跑不动弃了弃了

最后T1果然被卡,\(70+30+10=110\)收场,看了应该多想想T3的啊。

Rank6又掉了一波分,总排也滑了一位woc最近掉的分都快到200了

下午又回老家了,然后又是一段时间的撸寒假作业但没有刷题的生涯。


2-10~2-12

中间和表弟去看了场电影,由于《流浪地球》已经看过了就去看《疯狂的外星人》了。

怎么说呢。。。在国产片里还算可以?比起什么科幻喜剧的标签我认为这部电影更多的是嘲讽?

是对看不起民间艺术的社会现实的讽刺,还是对重金逐名的人们心理的讽刺,还是最后对屡屡被酒害了的外星人死心不改任然带走酒的讽刺。我觉得都有。

然后恋樱推了下,发现我TM的就是喜欢废萌。白开水的共同走得比死馆高到哪里去都不知道了。发现实妹好评,决定一周目就走奈美线

但是不幸的是12号白天发烧了,去镇上的医院看一下TM的都不给我挂针,最后赶到城里一量已经\(39.6\)了。

然后一个下午就躺在床上挂针,整个人迷迷糊糊的。一想到明天就要去学校就稍微好点了,毕竟天天在家太颓废了

值得一提的是终于把寒假作业写完了虽然我免掉了大部分的作业,终于可以安心写题了。


2-13

woc早上我妈和我说CXR dalao也发烧了躺家里了,然后到了机房老爷说XRY dalao也TMD发烧了。

emmm。。。其中是否有什么内在联系?

但是今天不考试好评,然后法老讲课——省选基础数学

坐在CJJ和ZZK两个神仙边上,然后看着他们和法老谈笑风生。ORZORZ(不够前面的有些东西之前看过的话还是可以理解的)

义乌的一帮神仙也来了,感觉明天考试会被大虐。看到了神犇bztMinamoto,不禁在心中疯狂膜拜。

中午抽空做了道题,总算是把LCT题单上的子树信息部分搞完了:

  • LOJ #558. 「Antileaf's Round」我们的 CPU 遭到攻击 看到有动态加删边那么就是LCT,考虑维护子树信息,这样每次修改和询问都只需要先makeroot然后直接对于这个点操作即可。我们把splay按照原树的顺序链接好,发现其实也是一个算贡献的问题,画个图讨论下左右两种情况即可(因为要翻转),就是要维护的东西太多了所以写起来很烦。

下午还是讲课,容斥那一套基本都看过(原来\(Min-Max\)容斥就是这么个东西)

特殊数列基本都知道,然后卷积入门就是FFT的理论知识什么的。但后面开始讲起了任意长度卷积高维DFT(FWT),于是就掉线了。

不过最后还是结束了,今天讲了真久啊,然后就去找了喜闻乐见的\(Min-Max\)容斥模板题:

  • LOJ #2542. 「PKUWC2018」随机游走 发现答案其实是一个集合期望步数的\(Max\),那么直接套\(Min-Max\)容斥这样就只用算出\(Min\)即可。首先在集合中的一个点期望肯定是\(0\),那么剩下的可以套路的写一个高斯消元求解,但是貌似\(O(2^nn^3)\)好像也能过。不过树上的消元由于不会成环,我们可以直接设常数然后DFS转移即可。最后可以用高维前缀和那一套理论把复杂度降到\(O(2^nn)\),不过直接枚举子集好像也不慢?

晚上又去挂针,本来挂着没什么效果的,然后吃了点东西立马生龙活虎。

回到家摸了下键盘顿时感觉神清气爽,不禁想去写一写多项式全家桶开个玩笑

晚上准备把昨天推了一半的恋樱学姐线过了(据说是真女主),然后下一个推Tina吧,可爱就对了。

不过不得不说妹线强行喂屎(???)还是挺难过的,玩的我浑身难受。


2-14

自闭日。早上在老妈的反复要求下最后还是去看了,还是在CXR老爸那里检查的(大雾)

然后说没什么问题就抽了个血就走了。但是其实头还是有点晕

到了机房模拟赛,然后发现里面很闷,烧很快就上来了。。。

还是坚持打一下吧,T1一看就是我做不动的数学题,写了个暴力打打表发现没有规律遂弃疗。

然后T2题目看不懂(大雾),只好看T3。感觉很可做(部分分很多),结合了下自己的实力觉得可以拿满\(53\)的部分分,于是直接开搞。

\(O(nmk)\)纯贪心不讲,\(b_i\)都相等也是ZZ。\(k=1\)的话可以用\(0/1\)Trie但是其实没有必要。

分类讨论一下就好了,因为只能配一次,要么是找两个一样的数消成\(0\),要么用\(b\)\(\operatorname{lowbit}\)最小的匹配\(a\)\(\operatorname{lowbit}\)最大的。

然后不要问我问什么求完\(\operatorname{lowbit}\)之后还要左移,最后TM的就爆蛋了。

剩下的时间猜了个T2题意,写个暴力什么的好歹也是调过样例了。

最后T2,T3都炸了,而且想了下T3不是很难,T1如果在分析一下就可以把之前推的\(O(n^2)\)优化到\(O(n)\)

不过最后正解分块打表可海星。希望明天不要翻车了(ORZ狂虐场的bztMinamoto)

晚上还是吊针,回来写了个回滚莫队的裸题(模拟赛的T2要用):

  • BZOJ 4241: 历史研究 带权值的区间最大数问题?不强制在线就考虑莫队。但是这里的莫队删除的时候不好维护答案的变化,因此我们可以用一种只有插入的莫队,那就是回滚莫队(其实我觉得更像是询问分块)把所有左端点所在块相同的询问按右端点递增排列,这样统计每一个左端点时右端点最多向右移动\(O(n)\),同块内的每次暴力统计完了再删掉就可以了,总体复杂度\(O(n\sqrt n)\)。注意特判左右端点在同一块里的情况。 sol

验血出来发现不好,看来要早点睡啊。flag


2-15

唉今天可怜又有比赛注定被虐

结果早上又起晚了(昨天明明这么早睡),差点迟到。

不说了,看题。woc,T1怎么这么熟悉啊,这不是CC的原题么!

好像是去年暑假写的,我记得是什么泰勒展开,然后开线段树维护?什么不可做的玩意

不管了先写个暴力,再码个延时分块骗个分?(事实证明这样就满了)

T2什么鬼,部分分都是\(O(n\log n)\)的,让我这种暴力选手怎么活。。。

看T3,我会\(O(nm)\),然后剩下的\(20\%\)推一下结论就好了啊,50pts到手。

然后拍了下T1,T3,见没什么问题就去吃饭了。

回来后突然会了T1,只需要用\(\operatorname{In}\)\(\prod\)变成\(\sum\)就可以了,然后用泰勒展开\(100\)次就好了

复杂度\(O(100\cdot n\log n)\)感觉不虚

事实上只需要展\(30\)次,结果交上去就T的只有\(20\)(连暴力都不如)

然后又是被吊打,ORZ CXR dalao虐场。

T2好像是新·男人八题里的,那个DP不是很好想。T3是基环外向树森林,策不来的东西啊!

晚上TMD还要去挂针,然后还是没法洗头,我要自闭了。

如果明天还有模拟赛的话保我RP++吧。


2-16

今天起的莫名的早啊,然后八点过就到了。随便看了下别的题目,然后就开始了

看题,ABC看海星。T1无感,猜测是个数学题flag,先扔一边

然后是T2,woc,这题目有点熟悉,这TMD不是雅礼集训的原题么,我在LOJ上都看到过好多次了

不会怎么办,猜测正解是什么树套树什么的,感觉码不出来,遂开始看部分分。

良心出题人给的部分分很足,然后我就开始分类讨论。首先\(O(m^2mod)\)的背包正常人都会写

然后往下看还有纯插入和类似于栈的东西,虽然没写过栈背包但是个人都能YY出来吧,遂策掉了

然后比较闲看到了一个\(mod=2\)的数据,大力贪心讨论一下,用个带删除的堆维护下就好了

这么一堆200+的CODE码起来就有\(65\)分了,然后过了快3个小时。

在吃饭之前快速码了T1的部分分,估计T1基本上都是暴力分

吃饭的时候CJJ请客(大雾)吃了关东煮,除了有点咸其它都海星

回来准备开T3,发现一个最朴素的\(O(nq)\)暴力就有\(48\)分,看了下数据范围估计是个虚树,不是很好写

于是又开始分类讨论了,剩下的一条链的情况很简单,找到左右两边的搞一下就好了

然后有个\(k=2\)的部分分,就是个树上分类讨论吗,涉及到换根什么的讨论一下就好了,再码个LCA什么的很快的

然后就写出来细节超多的树上走路,调到最后一分钟终于拍上了

最后\(40+65+68=173\),没写挂题所以还算可以,是没有过题的人中最高的了纯暴力选手

讲完发现T1就是ZZ线段树,T2维护两个栈背包但是合并的时候可以用RMQ优化,我没仔细想

T3真是虚树,有点写不动啊,回家后把T2改了。但是写到一半LOJ炸了,我题目也没拷来

遂不管了明天去学校再说,手测了几组数据应该没什么问题。

不过不得不说的是昨晚完恋樱的夕莉线最后像是喂屎了,不能推华哥差评

今晚把这部结束了,少女领域都下好了,凑哥我来了!


2-17

昨天晚上打美樱线的时候太无聊很早就睡了,但是早上还是很困。。。

到机房先测一发贪玩蓝月,果然WA掉了,先弃了

今天的题目感觉不是很眼熟啊,那么更加要凉掉了

T1什么鬼,一眼线性基,看起来好像是个思博题,就先放着吧。

T2一眼bitset维护,然后优化复杂度的话。。。考虑ST表还是分块,好像有点卡时间呢

算了先不管了,码个暴力再说。写完之后顺手写了下\(k=1\)主席树,就是一个记录前驱的东西

看了下\(40\)左右就看T3去了,字符串!昨晚还奶了肯定要考字符串然而我什么都没复习

首先作为一名信仰暴力选手,猜测自己不一定能写出SAM,于是就先弄了个暴力Hash

想了下不是很稳就开了结构体写了双Hash,应该没锅

然后看到一个\(k=n\)的我会做,本质不同的字串个数嘛!记得可以用SA做的

凭借着对SA的一些简单理解写出来了,估计T3其它也不好搞了,\(40\)滚粗

吃了个饭回头看T1,首先好像可以把边权化到点上,然后就是每次选两个点异或上一个数,求最小步数?

贪心的想法,两个一样的必然先抵消掉。然后剩下的每种数最多一个,可以状压DP求一下方案

初步看了下复杂度应该是\(2^{a_i}a_i^2\),莫名很虚,就直接枚举转移了,结果由于转移顺序的问题挂了好久。。。

早知道写记忆化搜索了,又快又好写,不过总算是A掉了。

然后一测T2爆零了,细细一看原来是强制在线写错了,MDZZ

然后T3的数组开小了,SA的10分也没搞到,彻底翻车

\(100+0+30=130\)又被CXR dalao吊着打,我可以AFO了

晚上老爸到酒店开了房间洗了个澡,真TMD舒服

晚上写了道题话说我Luogu上这个月的做题数可能会只有个位数?

  • Luogu P2173 [ZJOI2012]网络 看起来很神仙的题,实际上很ZZ。考虑到查询操作以及第二个限制,所以我们知道这是树上路径查询。乍一看还是不可做,不过往下看发现数据范围\(c\le10\)就可以直接对每种颜色开一个LCT维护信息,然后剩下的就是细节的模拟了,注意替换后边的颜色不变的情况。

不过马上要开学了期初考不会要凉了吧,有点小虚。


2-18~2-19

其实今天已经19号了明天上学瑟瑟发抖,昨天因为回老家吃了个饭回家的时候好像有点晕车,所以很早就睡了

昨天早上也有模拟赛,简略地写一下吧

首先由于早上起晚了以及在酒店吃早饭耽搁了一定的时间,到机房的时候已经迟到20分钟了

然后第五机房被老叶拿来给HW的考试了我TM的都忘了有这茬,然后只好去了第一机房

没有了熟悉的青轴而变成了薄膜,凉凉钦定

首先看题,一眼看去三题都要膜,难不成是三道计数事实就是这样

T1还下发了一个很奇怪的东西,给了\([1,10]\)二次剩余,一脸懵逼。

然后就先看T1,这个概率好像不难算,设一个\(f_{i,0/1}\)表示扔了\(i\)轮,第\(i\)轮是正/反面朝上的概率

然后直接转移即可,打了表输出发现倍数之间的关系并不是那么显然。。。

所以就开始乱搞了,手写了一个分数类把小数化成分数,然后发现了那个关键的规律:\(f_i=\frac{Fib(i)}{2^i}\)

但是要求倍数啊,这个鬼东西好像是无限的,先弃了看T2吧已经过了快一个半小时了

T2好像是一个老式的树形DP模型,那个\(6s\)的时限弄得我很方

然后就开始码暴力,大概就是一个背包转移,记得之前绍一好像讲过这个东西复杂度是\(O(nm)\)

写完了看下有\(37pts\),就先去看T3了,数据范围暗示\(O(n^3)\),不会是矩阵树定理flag

感觉可能放在T3不是很可做,况且要吃饭了,所以就没有继续想下去,码了个\(30\)分暴力走人

吃了个饭回来准备好好杠杠T1,期间突然意识到了那个表的作用,\(\sqrt 5\)

接下来就是搞斐波那契数的通项公式了,然而我并不会特征根法,然后就开始猜公式

虽然过程有点艰难但最后还是搞出来了,然后稍微化一下式子发现就是一个等比数列求和的形式,就可以把无限化掉了

随便写了下一发过了三个样例,一看\(10^{18}\)都过了那也稳了,就开始想T2的部分分

菊花图的比较好想,就是在\(n\)的数里选\(m\)个出来累乘的总贡献,好像可以组合容斥+NTT

一看还有半个小时感觉写不完了,于是害怕暴力翻车就检查了一下但最后还是翻了

最后\(100+22+30=152\)和CXR dalao一起Rank2,ORZ怒切T1,T3的JZ。

后来发现我们T2都忘记给一个背包的循环取\(\min\)了,然后爆了数组。。。

似乎状态在回升?但是我还是做不动难一点的题啊!

T2的标算很神仙,轻重剖分+分治NTT+哈夫曼NTT,这谁写的动啊复杂度ZZK说是若干\(\log\)

下午改了T3然后就走人了,准备面对期初考。

晚上到外婆家吃饭但是TMD老杨浩也来了,然后就看着他喝酒。。。

剩下的一段时间都在做开学前的自我放松,不管怎么说,这个似有似无的寒假也算是结束了!

值得一提的是19号我就真香的把炉石下回来了,然后一波操作打回了6

其实本来都打到渡劫局了,然后一个治疗园一费天胡劝退了我的天胡奥秘猎

不管了这个礼拜回来在渡劫吧,传说的目标无望低保还是要领的啊


Postscript

感觉这个寒假过的很憋屈,什么也没有搞好的样子。

题目没怎么写,比赛打得天天翻车,炉石屁都没上,Galgame一部都没推完(恋樱TMD剩下美樱线的HS没打),作业勉强写了点

我还是太弱了啊,一想到三月份的省选,感觉自己的希望其实真的不大了

但是还是要狗住吧,再过两个礼拜左右就可以停课了,然后初中时期的学习也差不多告下段落了

posted @ 2019-01-27 22:27 hl666 阅读(...) 评论(...) 编辑 收藏