//By SiriusRen
#include <cstdio>
using namespace std;
int n,m,a[1005];
typedef long long ll;
ll C[2005][2005],f[2005][2005],g[2005],mod=1000000007ll;
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=m;i++)scanf("%d",&a[i]);
for(int i=1;i<=2000;i++){
C[i][0]=C[i][i]=1ll;
for(int j=1;j<i;j++)
C[i][j]=(C[i-1][j-1]+C[i-1][j])%mod;
}
for(int i=1;i<=n;i++)f[0][i]=1;
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
f[i][j]=f[i-1][j]*C[a[i]+j-1][j-1]%mod;
for(int i=1;i<=n;i++){
g[i]=f[m][i];
for(int j=1;j<i;j++)
g[i]=((g[i]-C[i][j]*g[j])%mod+mod)%mod;
}
printf("%lld\n",g[n]);
} 二刷
2018.8.1
//By SiriusRen
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int p=,N=;
int n,m,fac[N],inv[N],tot,a[N],f[N],finv[N],ans;
int C(int x,int y){return fac[x]*finv[y]%p*finv[x-y]%p;}
int pow(int a,int b){int r=;for(;b;b>>=,a=a*a%p)if(b&)r=r*a%p;return r;}
signed main(){
fac[]=fac[]=inv[]=inv[]=finv[]=finv[]=;
scanf("%lld%lld",&n,&m);
for(int i=;i<=m;i++)scanf("%lld",&a[i]),tot+=a[i];
for(int i=;i<=tot;i++)
fac[i]=fac[i-]*i%p,inv[i]=(p-p/i*inv[p%i])%p,finv[i]=finv[i-]*inv[i]%p;
for(int i=;i<=n;i++){
f[i]=;
for(int j=;j<=m;j++)f[i]=f[i]*C(a[j]+i-,i-)%p;
}
for(int i=;i<n;i++)ans=(ans+(i&?-:)*C(n,i)*f[n-i])%p;
printf("%lld\n",(ans+p)%p);
}
 

最新文章

  1. zabbix 自定义探索规则发现服务器上面的kvm虚拟机和对应的网卡
  2. python 3 学习笔记(二)
  3. 数据库相关 sql 语句
  4. linux下IPTABLES配置
  5. iOS - UIDatePicker
  6. sql连接又一篇
  7. ElasticSearch部署
  8. ProgressBar 各种样式
  9. homework-08-作业2
  10. win7下安装load generator
  11. bulk insert data into database with table type .net
  12. 【iOS】随机三角瓷砖布局算法
  13. Android应用UI架构
  14. javascript实时保存时出现改动多条记录的bug
  15. window.onload
  16. 字符串及其操作,字符的Unicode编码
  17. 【Spring源码解析】—— 依赖注入结合SpringMVC Demo-xml配置理解
  18. layui table 表格模板按钮实例
  19. March 11th, 2018 Week 11th Sunday
  20. LaTeX大于小于号

热门文章

  1. Java基础10一面向对象
  2. 学习js与css 写个2048
  3. 学习SQL笔记
  4. 开源作品-ThinkPHP在线分析工具(单文件绿色版)-TPLogAnalysis_PHP_1_0
  5. JDK1.7源码阅读tools包之------ArrayList,LinkedList,HashMap,TreeMap
  6. 安装mysql-python的遇到的问题
  7. 03--SQLtie三言两语SQLtie链接(join)
  8. oc懒加载 &amp; swift lazy
  9. mac安装win10后触摸板没有右键功能键的添加技巧
  10. JS 封装一个求圆面积的函数 传值:半径