春节前集训记


  %%%ZKX。

20180123 退役之旅Day1

  中二:“觉得自己真的,真的是越来越弱了,心不在焉,浑身乏力。不是有力无心,就是有心无力。瓶颈,失落。不紧张,只觉得脑子很昏。觉得对不起自己,对不起我的教练,对不起我的同伴,对不起我的竞争者,对不起我的父母。

  “机房里面真的好闷,头好昏,心好散。”

  上午ZKX讲有限微积分、阶乘幂、差分及其法则、移位算子、分部求和,讲取整函数,讲二项式系数、组合数、上指标反转交换上下指标下指标反转、范德蒙德卷积,讲高阶差分泰勒展开级数对应的牛顿级数、多项式转组合数之和,讲string数、bell数、伯努利数。虽然大多都还听得明白,但这却深深的撼动了我对信息学竞赛中数学知识的看法。Mobius反演都变成了最基础的东西,生成函数竟也可以被diss……觉得自己好傻。

  之后4个人讲了4道题目,2个人讲树上数据结构,1个人讲一道网络流趣题,1个人讲Malygos。觉得自己真的学傻了,什么都还不会就固步自封,题目的变化千千万万,我见过的真的太少太少。

  对了,我下午考试只有10分。10分是T1直接输出0得到的,时间都拿去做T2和T3,结果都挂掉了。TAT

  这边有人送了一张卡,尚余0.8元。我充了100进去,账也由我记,一天下来还剩8.60。午饭吃的食堂,食堂还不错。晚饭的时候,我、ZJC和ZKX一起去后山吃了一顿“垃圾食品”(额擅自拖队了),我没有吃荤点了3个素菜(白菜、豌豆尖、黄瓜)配一碗饭,8元味道还不错。ZJC则是荤串串+水煮方便面,ZKX则是米饭+水煮方便面。

  呜呼!

20180123 模拟(THU 2017)

  今天这场考试,据说当时全场AK人数极多……但这套题目其实本来也可以的,只是我太弱了……

  T1就是一个SB大爆搜,使用树状数组。当时改T3去了,再加上并没有对插头的4种状态理解清楚(其实是2个插头上上下下),写暴力复杂度很高,于是弃了。printf 0得了10分

  T2的官方题解PPT中说,50个人全部AC……其实我本身也没有太多问题。只是,只是对能够成为中序遍历第一个的理解不正确,不单单是叶子,degree≤2就可以了。再一个,我DFS的时候,一个应当是局部变量的小数组我居然全局了……记得当时华容道调不出来就是这个原因。试了一组小数据,顿时明白,仰天长啸。0分!!!

  T3则是一道矩阵快速幂,我傻既存期望又存概率,但其实完全可以只存概率然后加一个位置。然后再用各种技巧:临long long上界就减,向量*矩阵。改挂了,0分!

20180124 退役之旅Day2

  !,!!,!!!……!——!,,,。?

  回酒店之后一定要把窗户关严实,不然万一梦游了,21层可不低啊。

20180124 内心的小独白

  黄老师真的好强啊……上午讲构造,分分钟就秒了我的题……而且,还是一个很有亲和力的人,我着实十分仰慕他。

  今天死的更惨更不应该。时间大量砸在T3上,却多数是原地踏步,最后只得了6分,理论上至少10分的……T2显然是SB板子题,但是这种题目写正解调出来的几率很小(之后如果改当然就不在乎啦),写了自然溢出hash却被无情的卡掉了……T1完全不会,什么无穷级数生成函数多项式求逆统统都不会,就写了暴力。然而,然而,当时居然脑子昏到T1和T2都没有,直接文件错误错误错误!

  到底是怎么啦?不过说,幸好题目的强度大,才能更快的找回状态。找不回状态,就只有后面付出沉重一点的代价了。哎呀,反正大不了,川大也是保底的。

  T1是0分,T2也0分,T3独6分。

20180125 测试

  T1是BB题,带权并查集。100分。BZOJ 4668、。

  T2是一道费用流好题。然而我只会枚举建层图,30分。BZOJ 4669。

  T3是一道2-SAT,当时顺着题单刷的时候看到这道题目,以为是max(Da,Db)却只当是水题,失掉了一个好机会。我只会O(n4)的,但优化枚举之后可以O(n3)。但也没有调出来,0分。BZOJ 4670,4078。

20180126 测试

  T1忘模了,挂掉40分。正解是stiring数O(nk),暴力是O(nk2)。最终0分。

  T2指针池开小了,挂掉50分。是一道很裸的树套树,颜色可以用+1+1LCA-1解决。但是会被卡常,应该要用树状数组+线段树。指针池100N会RE80,300N会被卡常TLE20,500N就MLE100。20分。

  T3不知为什么,后60跑的答案都很小。就只有40分。不知道为什么,觉得这道题应该是一道很好的趣题。

20180127 day5

  ZJC讲课选的题很不错,LXY讲题是请ZKX来代劳的。

  下午还gang了一会儿的提交答案,结果并不需要做。

  T1百思不得其解,最后那个之后想到可以用括号来理解。NM<1e5,而N>M时无意义,所以N<320。dp[i][j][k],枚举位置i,然后有j个左括号k个右括号。每个位置可以不做、[、)、[ )共四种选择。f和g维护总和与方案数统计。其实挺漂亮的,带上滚动空间O(n2)时间O(mn2)。但是中间一定不能memset,不然m=1e5时会死的很难看。另外,中间并不需要每次都加上乘模,如果最后做就可以省掉3*mn2次乘模实测会快将近一倍。这道题目确实很好,当时并没有想到可以用这样括号序列,最开始的想法是把O(m2)个区间都当做方格图中的点,几乎完全不可做。我想还是最开始一心想着分开算所有元素的贡献才会如此的,但如果想到所有的端点从左到右的顺序就好了。其实,如果能写出DFS的暴力基本上就可以了。还是自己的经验太不够了。

  T2只会写暴力,30分。ZKX太强了,3点钟就切掉了这道题目。BZOJ 4231 回忆树,一道好套路题(觉得这种套路似乎在CLJ老师的论文)还是应该去做一做。

  T3基本上是一个完全版的最大权闭合子图。我不会建图,今天晚上学一学。

似乎很久很久都没有更过了……

20180128 BS Day6

  上午讨论3道题目。几道题目都很好。

  T1是一道树上的1期望概率,使用到了很多的技巧,比如说树上的高斯消元带上去再消下来,PKUD2T3碰到这个套路的时候就根本不虚了。暴力是状态压缩+高斯消元。树上黑点是碰到就得分,于是可以列期望的式子。白点是碰到就只加一次分,这个可以算出其到达概率求解。到达概率计算有一点坑,要预先算出边上行概率,再算出边下行概率,最后求出每个点到达的概率。

  T2是一道很好的题目,询问一段区间为起始点的后缀中两两最大LCP,有很多种做法。

  法一,回滚莫队+链表+分块桶,考虑到一个后缀集合加东西困难而删东西容易,加是O(log n)的,而删用上链表则是O(1)的且很容易撤销,而删去一个元素之后则是失去两个值增加它们的min,如果使用正常结构则会变成O(nsqrtn*(1+logn)+qlogn)的无法过去,考虑如果使用分块桶则可以变成O(nsqrtn*(1+1)+qsqrtn)的,非常优秀。

  法二,暴力bitset。考虑通常后缀数组中出现的height合并,我们也可以如此考虑。最开始每个后缀都是独立的,随着我们从大到小枚举height,后缀之间分组的界限逐渐模糊并最终合并。而两个后缀如果同属一个询问区间,则它们合并时的height即它们的LCP就能够用于更新该询问的答案。我们可以用并查集+bitset维护每个后缀组中后缀各属于那些区间,再用一个bitset维护残存询问。两个后缀组合并时为两组bitset与残存询问的与,处理出所有的1对应答案并相应抹去残存询问,之后并查集合并并将bitset或起来。关键是最开始的时候,如何处理出每个后缀分别属于那些询问。暴力就一定会jiji,但是因为每个询问是一段连续区间,可以使用差分异或解决。

  法三,LCT维护后缀树。这个做法我还不会,但看上去挺神的。

  T3就是一个结论题,重心不难猜,之后如果一个点要变成重心最好的办法也就是把重心最重的几个非自己所在的子树切下来接到它那里去。大胆的猜测和细心的推证都是必需的。

  晚上的时候,ZJC、QJX、XZR就回去了,回去之前张叔叔请吃了一顿饭,但是我要翻山越岭去吃火锅,便没有去成,晚上最后也没有回酒店。

20180129 PKU Day0

  早上起得很早。飞机餐不敢恭维。一到长沙,呼出的全是寒气。中午在火宫殿吃的,种类多,但觉得不怎么样。晚上在粟厨吃的,湘菜味道还可以。

  晚上最后给hfu打去电话,打完了之后和WYS聊了很久。

20180130 PKU Day1

  上午开幕式。郭耀老师讲计算机的历史,很有趣味。终于,最后,他说,同学们关心的东西来了!几分钟之内,介绍了PKU IT的事情,并说:原来PKU的某项指标特别靠前,后来因为某些学校的阻拦,最终没有再评过。

  后来WYS说,THU的老师:“CS专业,THU第一,国科大第二,PKU第三,浙大第四。某项指标,一般上90认为是世界顶级,THU去年95,国科大80出头。今年该项评选,国科大很有把握,但仍认为可能和THU相差10分左右。”

  之后考数学,30道选择题OpenJudge在线交+4道大题白纸交。题目不难,但是可以明显感觉到选择题是在搪塞你的时间。选择题还要一道一道的交,为了防止错误,我先做完并将答案填在了纸上,之后检查了一遍答案,之后依次提交了30道题目,之后再检查了一遍看是否有交错。开始做大题的时候就只剩20多分钟了,不过幸好大题更水,水一水就交了。后来听说似乎考的挺好。上午我旁边的人好像是杭二的,初中就开始长期在YALI训练,现在高一,选择题动作很快,大题却做不下去。

  下午第一场。

  T1 minimax。是一道二叉树上的概率,线段树合并,要用到全局变量和标记,我最开始傻,把线段取出来再for一遍,被卡了常数,不过以后大概可以出“线段树合并+CDQ分治”这样的恶心玩意儿。这道题目调了我很久,中间一度濒临绝望,认为自己快要没了。

  T2 slay the spire。WC上吉如一说是他出的题目。O(n2)的期望转化为统计其实并不难,全场也有很多人AC,但是我直到现在都不会写……

  T3 斗地主。Jiry说这题也是ta出的。按规则来,问地主已有给定牌的情况下有多少种方法可以春天。春天的总方案数特别少,只有四万多种,于是只需要搞出所有方案就可以了。找方案的时候分农民有无炸弹,细节太多还是很讨厌的。所以说,最后全场无一人得分,Jiry说老师们一致认为这道题是出得最好的……后来我听一个翻了车的人说,他看了看题的名字,果断选择了这道题目,敲了300多行就此翻车……

  最后D1:110=100+10+0。T2不会做,刚交T1时40名,那时候17: 30,以为18: 00比赛结束,就逐渐放弃了,最后才发现是考5个小时!!!然而已经没有救了,就盯着屏幕,看着自己的名次一点点往下掉,最终稳定在65名左右。

  晚上我妈点的菜,额……

20180131 PKU Day2

  上午考试,下午面试。

  T1 随机算法。一道O(2n*n)的暴力状态压缩DP,中间自己。

  T2 猎人杀。

  T3 随机游走。树上期望,算法不难想,但需要使用到树上高斯消元套路,。

  面试一共3场,3个教室每个教室一个老师。具体机制是这样的:把连续12个人分成一组,把每个老师15:00~18:00这3个小时分成3份,每个人面试5分钟,这样就只需要把每一组人对应到3个不同地方的不同时段,每个老师也会在3个小时之内遇见3波人。看上去挺像完美覆盖的……
20180201 PKU Day3

  咦咦咦
20180202 Fun day
  喔。

20180203 WC Day0

  啊!
20180204 WC Day1

  LZZ+MYY。
20180205 WC Day2

  JRY+ZZX+LCA。
20180206 WC Day3

  WYS+ImmortalCO+DYH。

20180207 WC Day4

  YJQ+宽爷+五人团。

20180208 WC Day5

  Test。

未完待续……