指数型母函数

#include
#include
#include
#include
using namespace std;
#define manx 13
double a[manx],b[manx];   /// a[] 代表第一个式子的系数
long long num[manx];
long long fan(int n){
    long long sum=1;
    for(int i=1;i<=n;i++)
        sum *= i;
    return sum;
}
int main(){
    int n,m;
    while(cin>>n>>m){
        memset(b,0,sizeof(b));
        memset(a,0,sizeof(a));
        for(int i=0;i             cin>>num[i];
        for(int i=0;i<=num[0];i++)
            a[i] = 1.0/fan(i);
        for(int i=1;i             for(int j=0;j                 for(int k=0;k<=num[i]&&k+j                     b[j+k] += a[j]/fan(k);
                }
            for(int j=0;j                 a[j] = b[j];
                b[j] = 0;
            }
        }
        printf("%.lf\n",a[m]*fan(m));  /// 组合数学
    }
}

你可能感兴趣的:(ACM模版)