THUSC2021 自闭记
作者:互联网
今年是菜鸡第一次参加 \(thusc\),可以说结果非常的不满意,实力与心态上都有很大问题,希望能借此学到一些东西吧。
Day 0
从镇海坐高铁来到杭州,结果由于带队家长的催促,我们在火车站等了 \(2h\),火车只做了 \(1h\),十分自闭。到了之后得知今年 Day 1 5h 4题,Day 2 4h一道工程题,而且考场电脑是我从没用过的 \(ubuntu\) 系统,感觉会非常自闭。
Day 1
兴冲冲准备去试机,得知我被分到紫金港校区,下午才能试机,然后在国际交流中心看了 \(1.5h\) 的纪录片。。。(当然大部分时间在睡觉)。
下午来到紫金港校区,居然有 \(40\ min\) 的车程,直接导致 \(14:00\) 开始的考试,我们在 \(13:40\) 终于拿到了密码条开始了试机。不过比赛推迟了 \(15\ min\),用这时间打了个 \(NTT\),最后也没用上。
开始看题,本着四题考试必有一道送分题的想法,直接开 \(T1\),一开始想到了贪心选择,但显然不对。随后意识到可以先找出每次搬走的箱子数量,再依次二分每个位置的标号,那么就只需要动态维护标号 \(\ge id\) 的前 \(k\) 小的数的和就行了。这显然是用树套树先转化为 \(\log\) 个标号区间,然后再这 \(\log\) 个区间的权值线段树中同时二分来 \(\mathcal O(\log ^2 n)\) 完成。
但我在考场上石乐志,觉得这玩意可以直接主席树做(?),写完调了半天才发现需要修改一段区间的权值线段树,直接变成 \(\mathcal O(n^2\log n)\) 滚粗了。这时已经过了 \(1h\),我终于意识到要使用树套树,但转化为 \(\log\) 个标号区间,我再次脑抽,只想到了再二分一下第 \(k\) 小的数,然后在这 \(\log\) 个区间中同时判断,于是得到了一个 \(\mathcal O(n\log ^4 n)\) 的做法,笑死,根本过不去。顿时有种此路不通的感觉,赶紧去想后 \(3\) 题。
赶紧去看 \(T2\),首先写了一个最 \(trival\) 的枚举每个点作为根,然后 \(n^2 dp\)。发现枚举根节点可以淀粉质优化,只需要维护以值 \(x\) 作为末尾的上升或下降序列的最大长度即可,分别记为 \(f\) 和 \(g\),那么接下来就是要优化这个 \(dp\)。这个 \(dp\) 显然可以放到线段树上维护,然后每次传递到父亲就是一个单点修改了,那么求 \(u\) 的 \(dp\) 值只需要先修改 \(u\) 所有儿子的 \(dp\) 值,再直接线段树合并即可。很遗憾, 我在考场上写暴力时,\(g\) 是从儿子向父亲更新,\(f\) 却是从父亲向儿子更新 (\(?\)),然后我就觉得后者根本优化不了,敲了所有子任务滚粗了(\(?\))。
此时已经来到了 \(3h\),我感觉 \(T1\) 想复杂了,想抓紧时间想 \(T1\),于是 \(T3T4\) 基本没怎么想,简单敲了最简单的几个子任务却滚粗了。事后才发现 \(T3\) 就是一个裸的 \(FWT\) 且比 \(T1T2\) 好写 \(114514\) 倍,震惊我一整年。
最后时刻,我准备打一下 \(T1\) 那个 \(\mathcal O(n\log ^4 n)\) 的做法,因为感觉已经很接近正解,应该可以优化。然后我的垃圾码力问题在这时暴露了出来,直到最后也没能调出这个做法,最终以 \(60+60+40+20\) 的预估分滚出了考场。
出来得知大众分 \(320\),\(T1\) 就是树套树,\(T3\) 是简单题,只能说菜得真实。
Day 2
来到工程赛,开局下发了一大堆 \(sh\) 、\(h\)、\(cpp\) 文件,感觉十分可怕。本来很有兴趣准备了解一下光线追踪,结果 \(T1\) 就把我搞自闭了。看起来就是直接输出一些·东西,但是给我传了个 \(char\) 指针,这该怎么输出?我首先去找 \(T1\) 中所说了那个参考文件,结果找了半天没找到。找到后一看里面全是看不懂的文件操作,什么 \(fopen\)、\(fread\)、\(pFile\),完全自闭。幸好我会传统艺能,直接把参考文件复制过来,然后把 \(fread\) 改成 \(fwrite\) ,\(fgetc\) 改成 \(fputc\) ,结果写完之后发现,因为完全不会 \(linux\) 操作,我多次提问,用了十多分钟终于过了编译,一举拿到 \(30\) 分。
此时已经过去一个多小时,我想赶紧调出来,但是却没有任何头绪(事后发现是要求补 \(Ascll\) 码 \(0\),补成了数字 \(0\))。时间已经不多,只能赶紧去看 \(T2\),发现 \(T2\) 好像是毒瘤计算几何题,我注意到 \(math\) 里面告诉了我这题的做法,那么我就只需要实现求出三角形三点组成的面了,我想了很长时间,突然发现发的头文件里已经给我写好了这些函数,我人傻了。。。然后很快就通过了此题。
再来看 \(T3\) \(T4\),一开始题目描述搞得我一脸懵逼,但研究了 guide 之后发现答案竟在下发文件中,时间不多了,赶紧码码码。然而,\(T3\) 正确的做法是找到第一个障碍,看障碍与所求点谁到光源更近,而我却写的是只要有障碍就照不到所求点???然后只能在无限调不出来中结束了考试。
\(Day 2\) 最终只拿到了 \(50\) 分,我只能说不会 linux 操作与文件操作,菜的真实。
后续可能会有一个题解。
标签:log,然后,T1,自闭,THUSC2021,Day,dp 来源: https://www.cnblogs.com/tqxboomzero/p/14778439.html