菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
339
0

XSY1591

原创
05/13 14:22
阅读数 77166

题意

有标有数字为\(1\sim 9\)的卡片各\(a_1,a_2\cdots a_9\)张,还有标有乘号的卡片\(m\)张。从中取出\(n\)张按任意顺序排列,取出两个乘号相邻和乘法在边界上的非法式子,剩下的都是合法式子。求所有合法式子的方案的值的和。两张数字相同的卡片是不同的,两张乘号也是不同的。答案模\({10}^9+7\)
\(n\leq 1000,a_i\leq {10}^8,m\leq{10}^8\)

做法

对于\((...)\times (...)\times...\times(...)\),考虑每个括号内的一个位,然后算系数
\(f_{i,j}\)为前\(i\)位,放\(j\)\(\times\),所有系数和

\[f_{i,j}=f_{i-1,j}\times 10+\sum\limits_{k=1}^{i-2}f_{k,j-1} \]

\(g_{i,j}\)为前\(i\)个数字,选了j个代表数字(就是位)的乘积的和

\[g_{i,j}=\sum_{k=0}^{a_i}g_{i-1,k-j}\times i^k\times \binom{j}{k}\times a_i^\underline{k} \]

\(ans_i\)为总共填了\(i\)\(\times\)的答案和

\[ans_i=g_{9,i+1}\times f_{n,i}\times {(\sum a-i-1)}^\underline{n-i-(i+1)}\times m^\underline{i} \]

发表评论

0/200
339 点赞
0 评论
收藏