zoukankan      html  css  js  c++  java
  • XSY1591

    题意

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

    做法

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

    [f_{i,j}=f_{i-1,j} imes 10+sumlimits_{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} imes i^k imes inom{j}{k} imes a_i^underline{k} ]

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

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

  • 相关阅读:
    团队作业
    第四次作业
    第三次作业
    从电梯问题,看c和c++之间的区别(有点懂了)错觉错觉
    团队作业2
    游戏方案
    电梯调度程序4
    电梯调度程序3
    电梯调度程序2
    电梯调度程序1
  • 原文地址:https://www.cnblogs.com/Grice/p/12671444.html
Copyright © 2011-2022 走看看