【题解】CF1437F Emotional Fishermen 动态规划、计数
题目对排列 \(p\) 的限制为对于每个位置 \(i\) ,\(a[p_i]\) 要么不超过前缀最大值的一半,要么前缀最值不超过 \(a[p_{i-1}]\) 的一半。
一个显然的性质:前缀最值单调不降。
考察全局最值的性质:
- 对于全局最值后面每一个位置,一定不超过其一半,对于前面每一个位置一定不超过其一半。
因此对于全局最值我们可以发现,除了该位置其余位置均不超过一半。
因为对于前缀最值单调不降,所以考虑将所有 \(a_i\) 排序后用子问题的全局最值刻画前缀最值从而刻画子问题。
对于刻画排列,目前我以知的两种方式:
-
刻画每个 \(1\sim i\) 的子问题,转移考虑 \(i\) 插到哪个位置。
-
将构造排列看成 \(n\) 个元素往 \(n\) 个位置上填。
对于本题,我们采取第二种刻画方式,具体地:
- 令 \(f[i,j]\) 为填了前 \(j\) 个位置且最大值为 \(a_i\) 的方案数。
转移考虑最后一个位置是不是 \(a_i\) 即可。
复杂度 \(O(n^2)\) 。