NOI WC2021游记
Day0 2021/2/5
NOI WC的课在讲并行计算...觉得这个东西和算法竞赛没什么用就和 Refined_heart 去听洛谷春令营的多项式了。
然后成功掉线!
然后听到 big_news 狂D讲的这几个多项式题十分 trivial!
然后听到 Refined_heart 说这些不都是基础知识吗!
下午到了济南,晚上去试机。在门口见到了 华山抡剑 和 绝顶我为峰 。
在里面等抽签的时候见到了THUPC初赛一起组队的队友 wyx 和 lmq。
抽签现场!
试机的时候打了个最短路,树剖和线段树,出来听到峰说他写了个网络流写了个LCT,同城的学长 Shu_Yu_Mo 写了个NTT。果然我还是科技树点的不够啊。
试机现场!
把写的程序在C,D,E盘都存了一份,希望不要被清理了。
SD试机的时候能带进去电子设备可还行...
晚上想玩MC的时候发现鼠标不见了,仔细思考了一番发现鼠标落在了学校机房里...(然而还是借来了我妈的鼠标)
Day1 2021/2/5
没认出来东营市一中的教练,还叫了阿姨
进考场的时候发现前面就是Alan_Zhao。
打开压缩包,发现第三题题目名为"fib"...完蛋,斐波那契数列一条性质我都不知道,也没背过通项公式。
发了压缩包密码,是 "XinNianKuaiLe"
怕不是黄鼠狼给鸡拜年……((
——vectorwyx
花了5min读了一遍题,看到第三题题面的开头:
众所周知,小葱同学擅长计算,尤其擅长计算组合数。
钟爷爷的题woc,杀我啊。肯定数学题,弃了弃了。
决定顺序开题,看第一题看了半个小时毫无思路,去打第二题。
看到第二题:这不直接建个表达式树,然后发现不会建表达式树。
准备先拿没有问号的模拟分,发现不会做中缀表达式,想了想发现可以建表达式树后左右根遍历一下得到后缀表达式然后模拟,然后发现不会建表达式树。
好吧后来发现直接模拟就行了
其实表达式树后来也胡出来了
写完了模拟分,发现没有左右括号直接大力dp就可以了,然后发现这两个子任务有60分。好耶!
冷静分析了一波,发现这个模拟可以拿来建表达式树,然后在这个树上面用没有左右括号的部分分的方法来dp就可以了。
决定先把第一题和第三题的暴力分写了,第三题拿了最低档的30分暴力,
第一题横看竖看,一个子任务都不会做,\(m=n-1\) 的部分分第一眼以为是树,觉得有手就行,不过冷静分析了一下发现这是可以不连通然后变成多个DAG的,好家伙差点被骗了。
写了个带爆搜,搜到一个点超过100次就不搜了,意外地跑得很快,但不知道为什么没过大样例。
回来写第二题的表达式树上dp,以为是13:00结束,然后疯狂rush,在离一点还有两分钟的时候调过了大样例,心跳疯狂加速,不过大样例要跑10s。
等待收卷的时候发现并没有人动,看了眼试题第一页...什么鬼啊竟然是13:30收卷。
接下来卡了半个小时第二题的常数,从大样例10s卡到了1.6s,不过复杂度仍然是 \(\mathcal{O}(nm^2|E|)\)。
第二题写了三个子任务的分,加上我的码风喜欢带空格,代码成功破260行,码了6.5KB(老年人手速都能调出来是我没想到的)
赛后~
成功和华山抡剑合影!
成功和vectorwyx合影!
在考场外的时候见到了 Pbri,不过他好像很急qwq没和他打招呼。
以为我大样例跑了1.6s,过不了 \(5\times 10^3\) 的数据点。
big_news: 你都不仔细看一下字符串长度的吗,那个只有 \(2e4\) 。
Shu_Yu_Mo:你表达式树的节点个数肯定就是你字符串长度啊。
恍然大悟ing,还是too naive了。