GDOI 2021 总结
100+30+80+25+0+0=235
day1
T1:
二分枚举答案,
O
(
n
)
O(n)
O(n)枚举最小值,
同时维护当前需要翻转
和能够翻转成符合的要求的卡牌数,
总时间复杂度 O ( n log n ) O(n\log n) O(nlogn)卡卡常就能过了
T2:
应该说是完全没有思路,只打了一个 m = 2 m=2 m=2
T3:
最初打了一个
O
(
m
n
2
)
O(mn^2)
O(mn2)的暴力,
后来仔细想想,好像只要对于每一个
v
v
v
原图跑一遍BFS,反图跑一遍BFS,只走比v标号大的点
最大化 【从u到v路径上边编号的最小值】
时间复杂度
O
(
n
玄
)
O(n玄)
O(n玄),拍也拍过了,
随机的极限数据也测了
不过由于我更新的过程类似SPFA,被卡了也正常,
水个80也好
day2
降智了,居然只有25分,
T1
找到LCA以后,前半段可以用倍增,后半段就不是那么轻松,
(但事实上把询问离线就可以搞定了,)
还好链的情况是比较好搞的,倍增就搞定了(可惜打挂了,淦)
T2
应该是状压dp,
f
s
,
b
n
o
w
,
b
s
u
m
,
i
f_{s,bnow,bsum,i}
fs,bnow,bsum,i
好像会空超,于是打了暴力
O
(
C
n
+
m
−
1
n
−
1
)
O(C_{n+m-1}^{n-1})
O(Cn+m−1n−1)
不仅没调出来,赛后还发现人人的暴力都是
O
(
n
!
)
O(n!)
O(n!)的。。
T3
不会支配树
总结
day2应该说是有点状态不好,
主要还是心态问题,在考场上也注意到自己还是太着急了,
倘若冷静下来,认真思考,也不至于这么崩