Vexoben
Oct 23, 2018
比赛链接:AGC001
写完AGC003发现忘记写AGC001了……赶紧来补一发。
(刷新以获取数学公式)
E. BBQ Hard
题意
给定 和数组 , , 求:
,
题解
亮点在于模型转化。
考虑坐标平面上的 个点 , 就是从 走到 的方案数。
求和的话只是可以有多个起点而已。DP即可。
注意要去掉 走到 的贡献。
F. Wide Swap
题意
给定 ~ 的一个排列 和整数 , 每次可以选择两个数 , 满足 且 , 然后交换 , 。
问最小可以得到的字典序。
n ≤ 500000
题解
这个限制非常难处理。所以我们转而在 的逆上进行操作。
令 , 交换的限制就变成了:选择两个绝对值差大于 的相邻数。
注意到 字典序最小等价于 字典序最小。而如果两个数绝对值差小于,他们的相对顺序不可能改变。
对这样的限制连边,就变成了求字典序最小的拓扑序列。
但是这样连出的边数是 的。考虑对它进行优化。
数 只会向 和 这两段区间连边。而每段区间只需连这段区间中已经出现过且下标最小的数即可,线段树维护一下。
最后别忘记再还原到 数组