HDU 1521指数型母函数

2014-11-24 08:40:45 · 作者: · 浏览: 1
[cpp]

/*

题意:中文题 ...

指数型母函数详解神牛博文 : http://hi.baidu.com/nicker2010/item/fea0a5254208a30377272ced

*/

#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)); /// 组合数学
}
}