2022/3/23
Posted 。✧* ꧁王者꧂✧*
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2022/3/23相关的知识,希望对你有一定的参考价值。
比赛安排 :
最开始 ,
T
1
T1
T1想了比较长的时间 , 因为最开始没有考虑不合法的路线 , 然后就想着能不能二分答案 , 然后
n
2
n^2
n2枚举连边 , 最后跑一个欧拉路出来 。 但是!!!我忘了欧拉路代码怎么写(吐血)!!!然后想了半天 , 最后发现可能有不合法解 , 梦想破灭 , 写了
10
p
t
s
10pts
10pts跑路 。 (
10
p
t
s
10pts
10pts挂了 , 因为我用了
n
e
x
t
−
p
e
r
m
u
t
a
t
i
o
n
next-permutation
next−permutation , 我今天第一次知道这个东西需要原序列升序QWQ)。
然后就是
T
2
T2
T2的
50
p
t
s
50pts
50pts 。 对这道题有一点印象 , 但是想不起来是什么了 , 感觉应该用数据结构维护 ? 可能就是类似之前做过的某道不知名题目 ,
m
e
x
mex
mex的转换次数很少 , 所以只要找到
m
e
x
mex
mex的转变点就可以了 , 但是我不会快速维护一段区间的
m
e
x
mex
mex 。 拜拜 ~ 。我艹 , 我才发现原来维护
m
e
x
mex
mex的方法我考试的时候基本上就想到了 , 因为当时想着用什么数据结构 , 所以想到了主席树 , 然后就想到了主席树维护最后一个在它前面出现的某个数的位置 。 这就可以用来维护区间
m
e
x
mex
mex啊艹 。 呜呜呜~
T
3
T3
T3
真心不会写 。 随便写了个全排列 , 我也不知道对不对 。 然后挂了 。
补题后总结 :
首先 ,
T
1
T1
T1的正解是树形DP , 但这个DP的形式稍有不同 , 它是维护一个可行集合 。 首先 , 二分答案 , 然后考虑对于每个点 , 我们维护以他为根的子树中的合法路径
(
a
,
b
)
(a , b)
(a,b)的
a
a
a到当前点的距离和
b
b
b到当前点的距离 。 我们使它按
a
a
a递增排序 , 那么 , 可以发现 , 只有随着
a
a
a递增 ,
b
b
b递减的情况才会被用到 , 然后合法的
a
a
a取值只有当前点较小的子树大小的两倍 , 这样就起到了时间限制的作用 , 然后转移的时候把两个
v
e
c
t
o
r
vector
vector合并一下就好了 。
T
2
T2
T2
原来我之前做过
Q
W
Q
QWQ
QWQ 。 就像我说的 , 主席树可以快速查找某个区间的
m
e
x
mex
mex , 但是因为这题是从前往后
D
P
DP
DP , 所以就不用主席树了 , 直接实时修改即可 。
T
3
T3
T3
很
n
b
nb
nb的一道题 , 特别强 , 具体做法是这样的 , 我们把不互质的数两两连边 , 那么 , 对于一个联通分量 , 我们可以指定最小的在最前面 , 这样的话 , 每一次 , 我们指定一下最小的排最前 , 然后对于后面的数 , 去掉最小的 , 然后再做一遍这个操作 , 递归分治下去即可 。
以上是关于2022/3/23的主要内容,如果未能解决你的问题,请参考以下文章