本文主要是介绍CF1528F AmShZ Farm 题解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
CF1528F
其实不难,但是又有懂得都懂的感觉。
某谷的翻译真的鬼畜。
题目大意:
一个合法的序列 A A A 是 ∀ j ≤ n , ∑ i = 1 n [ a i ≥ j ] ≤ n − j + 1 \forall j \le n, \sum_{i = 1} ^ n [a_i \ge j] \le n - j + 1 ∀j≤n,∑i=1n[ai≥j]≤n−j+1。
给了一个限制 B B B 序列,要求 a b 1 = a b 2 = ⋯ = a b k a_{b_1} = a_{b_2} = \dots = a_{b_k} ab1=ab2=⋯=abk
求这样 ( A , B ) (A, B) (A,B) 的数量和。
首先考虑 A , B A, B A,B 看起来很独立,我们考虑分开计算。
对于 A A A 的限制我们不妨改变一下。
看成有 n n n 个人,每个人都选择了一个位置 a i a_i ai。每个人依次坐其选定的位置,如果这个位置有人了那么就向右坐一个位置。如果 n + 1 n + 1 n+1 这个位置没有人,就是合法的。
我们考虑总方案是 ( n + 1 ) n (n + 1) ^ n (n+1)n 然后对于一个合法位置其经过变换可以得到 n n n 个不合法的位置。
那么合法的方案就是 ( n + 1 ) n − 1 (n + 1) ^ {n - 1} (n+1)n−1。
然后考虑
这篇关于CF1528F AmShZ Farm 题解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!