6710. 【2020.06.09省选模拟】题1 permutation

题目


正解

可以发现g1g_1是个长成2k2^k2k32^k*3的东西,然后后面就像阶梯一样指数和一层一层地下降,最终到11

考虑2k2^k的情况(另一个情况枚举33被除去是什么时候,其它类似):
从后往前做,设sis_i表示最高能放到的层数不超过第ii层的数字有多少个。
假设已经处理完了i1i-1层,第ii层的点中要取出一个放到最前面,然后其它的随意插入后面的序列中。
于是贡献大概是这样:s0!(sisi1)!Csisisi11s_0!\prod (s_i-s_{i-1})!C_{s_i}^{s_i-s_{i-1}-1}
这条式子可以化简,最终发现瓶颈在于我们需要快速计算出(n1)!(n-1)!的值。
模数固定,分段即可……

既然有打表,那代码就不放了……

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章