【比赛日志】2020.11.12联赛模拟Day2
20191112-Day2-联测
考试时间:8:00~11:30。
[problem 11-12 down .pdf](problem 11-12 down .pdf)
半个小时,想出来了,第一题的假做法,第二题40分,第三题60分……
想完&写完所有思路了……9:43。
10:30开始调试:
- 10:54对拍好T1。
- 11:13对拍好T2。
- 11:25对拍好T3。
game
二分答案+贪心(打tag/队列维护)操作?
注意:一定要选择k个怪物!
9:00-9:21:写完&调试完。(没有对拍)
- 注意二分的最小值为\(1\)而不是\(0\)……出现被\(0\)除的错误了……
90分。错误:没有考虑\(k=0\)时的情况。 订正:game_.cpp
friend
friend.cpp check.cpp brute.cpp
随便最短路即可40!
预处理去掉一个节点以后\(1,n\)的单源最短路即可60!
……但是还是不知道怎么处理出去掉一个节点后的所有最短路??
奇怪的\(O(n^3\log n)\)做法
似乎可以用分治(类似整体二分)的方法把预处理优化到\(O(n^3\log n)\)??
【数据删除】
综上,复杂度是\(O((r-l+1)n^2)\)的,故总体复杂度是\(O(n^3\log n)\)。
100分。
revenge
revenge.cpp check.cpp brute.cpp
\(n\)次dfs即可60!brute.cpp
尝试一次\(dfs\)+压位dp……似乎可以到\(O(2^cn)\)?
以\(1\)为根,设\(f_{u,s}\)表示考虑\(u\)的子树内以\(u\)为端点的路径,经过的所有颜色为\(s\)的超集时,最少经过的节点数,则:
【数据删除】
大约在10:30调完。
100分。

浙公网安备 33010602011771号