省选模拟14
T1:
要求一个类似欧拉回路的东西
考虑其实就是将奇度数点两两配对,配对的代价为最短路长度,求最小代价
发现边权的特殊性\(2^i\),有一个很好的性质\(\sum\limits_{i=1}^{n-1}2^i < 2^n\)
那么最短路就都是最小生成树上的路径
只需要跑出最小生成树,然后在树上配对就行了
T2:
神题OwO
将(i,j)->(i-j,j),相当于把三角形的每行斜着排
发现变为了将一个排列放入一个特定形状且满足\(f_{i-1,j}<f_{i,j}\&\&f_{i,j-1}<f_{i,j}\)的方案数
这就是个杨氏矩阵,那么运用钩子公式解决即可
杨氏矩阵与钩子公式
T3:
又是神题OAO
考虑每个人的决策,实际上就是选择消除上次对方的操作或付出代价占得先手
考虑如果到了第n-1次a[n−1]之前没被翻转,那a[n]就会翻转,n mod 2那一方就会丢掉a[n]
令f[i]代表如果到了第i轮,a[i]之前没被翻转过,那么另外一方就会丢掉f[i]
发现f[i]等于从i开始的后缀最小值
那么对于是后缀最小值的位置一定会选择付出代价占得先手
所以设所有后缀最小值的位置集合为S
对于\(i \notin S\),i被i mod 2 一方得到
对于\(i \in S\),i被last mod 2 一方得到,last为i在S中的前驱
因为权值只会减小,所以用个set维护就完了