Day 1
什么?今天要比赛?毫无心理准备,害怕场上板子打不出来。
果断开题。
A是大水题,切掉。测了一下大样例,过了,就没有多管。
B貌似并不难,直接dpdpdp即可,期望得分707070分。
然后看C,我们可以直接O(k2)O(k^2)O(k2)暴力,另外特判一下链的情况即可。期望得分808080分。
看来rk1rk1rk1是我啦!开心……
待会儿测大样例有你好受的
BBB大样例没过,而答案却偏小?什么鬼?
并不慌地自造了一个样例,果然没过。经过简单的检查,发现——本题一个人不能被多次援救!如果你援救了同一个人正好kkk此,那你会认为所有人都被援救了!
所以显然简单dpdpdp不行。经过简单的思考,开始打暴力。
暴力打了202020分钟,代码才写了404040行(太菜了),于是删掉了暴力代码,去看T3T3T3。
反正没事,CCC应该没什么问题,100+0+80=180100+0+80=180100+0+80=180应该也有一个好名次。
但是CCC又炸了!
什么鬼啊,回去看了一眼,立即发现——
没有正确特判那两个条件。
然后在草稿纸上画了半小时,无果,放弃。
回去只好搞T1T1T1,并没有发现什么问题。最后,难受地交了。
我太菜了,rk1rk1rk1永远不是我了
期望得分: 100+0+0=100100+0+0=100100+0+0=100
实际得分: 60+0+0=6060+0+0=6060+0+0=60。
(rk1rk1rk1,只不过是倒数的)
我TMTMTM不知道我在干啥!!!
唉,如果要比菜的话,那我能吊打天下所有人。
Day 1.5
ghghgh巨佬讲题。
T1
我们考虑开桶。对于每一个iii,我们在桶中找到是iii倍数的数有多少个,记这个值为viv_ivi,显然这些数的最大公约数一定不小于iii;然后,对于每次询问的值kkk,我们只需要找到viv_ivi不小于kkk的所有iii中的最大值,我们可以通过简单的预处理完成。时间复杂度为调和级数,时间复杂度O(mlogm)O(mlogm)O(mlogm),其中m=max1≤i≤naim=max_{1≤i≤n}{a_i}m=max1≤i≤nai。
这不就是我思路吗?
于是,怒喊改分数。讲课的ghghgh神犇看了看我的代码,接着说了一句话:
“coutcoutcout没有printfprintfprintf快啊”
看了一眼我的代码,发现竟然sb地用cout输出了10610^6106个数?!!快读记住了,快输却忘记了!还有谁比我菜???!!!
心态炸了,唉……
T2
对于每一个did_idi,我们跑一遍DijkstraDijkstraDijkstra。然后,我们就可以直接上dpdpdp了。
dpdpdp状态转移就是状压的套路式:
状态设计: dpx,state:dp_{x,state}:dpx,state: 目前到了xxx这个节点,statestatestate表示各个节点是否到达过的二进制状压数。
状态转移: dpv,state=dpu,state+cnt(state)×disu,vdp_{v,state}=dp_{u,state}+cnt(state)×dis_{u,v}dpv,state=dpu,state+cnt(state)×disu,v,其中cnt(state)cnt(state)cnt(state)表示在二进制数statestatestate中111的个数,disu,vdis_{u,v}disu,v表示uuu到vvv的最短路径的长度。
总时间复杂度O(k(n+m)logm+2kk2)O(k(n+m)logm+2^k k^2)O(k(n+m)logm+2kk2)。
听完之后茅塞顿开。唉,这么水的题都做不出来了,要TG4=TG 4=TG4=预定了。
T3
对我表示无语。
首先,在考场上写了T3T3T3链的部分分,特别好写,前缀和维护303030行写完。但是,犯了一个sbsbsb错误——每次我们单点修改的是节点min(u,v)min(u,v)min(u,v),而不是uuu!
然后,听了ghghgh巨佬讲题。
我们可以发现,对于一条链u,vu,vu,v,能够扩展出这条链的链一定走了lca(u,v)lca(u,v)lca(u,v)的到u,vu,vu,v的子边。我们每次单点修改即可。
考虑查询,假设我们枚举到的链是(u,v)(u,v)(u,v),那么所能扩展出来的节点数量就是uuu到vvv的路径上各边权之和,这个显然可以用前缀和O(n)O(n)O(n)预处理+O(1)O(1)O(1)查询完成。
总时间复杂度O(mlogn)O(mlogn)O(mlogn),若用TarjanTarjanTarjan求LCALCALCA,可以将时间复杂度优化为O(n+m)O(n+m)O(n+m)。
Day 2
总结一波。
本场比赛中途过于骄傲,自以为已有250250250分(话说我真的好二五)。事实上,思路都是胡扯,另外T1T1T1还忘记了卡常,sb地使用了coutcoutcout。
想吃屎,唉
一名参赛者分享了自己在比赛中从自信满满到遭遇挫折的心路历程,详细记录了比赛中的策略失误和技术盲点,以及赛后反思和学习经验。
271

被折叠的 条评论
为什么被折叠?



