我们利用这个公式求阶乘和逆元求阶:

#include<cstdio>
const int N = 200000 + 5;
const int MOD = (int)1e9 + 7;
int F[N], Finv[N], inv[N];//F是阶乘,Finv是逆元的阶乘
void init(){
inv[1] = 1;
for(int i = 2; i < N; i ++){
inv[i] = (MOD - MOD / i) * 1ll * inv[MOD % i] % MOD;
}
F[0] = Finv[0] = 1;
for(int i = 1; i < N; i ++){
F[i] = F[i-1] * 1ll * i % MOD;
Finv[i] = Finv[i-1] * 1ll * inv[i] % MOD;
}
}
int comb(int n, int m){//comb(n, m)就是C(n, m)
if(m < 0 || m > n) return 0;
return F[n] * 1ll * Finv[n - m] % MOD * Finv[m] % MOD;
}
int main(){
init();
printf("%d\n",comb(5,1));
return 0;
}

最新文章

  1. python中的goto
  2. [修复] Firemonkey 画线问题(Android &amp; iOS 平台)
  3. 调用手机话费充值API的SDK编写思路
  4. Flask中mongodb实现flask_login保持登录
  5. 【windows核心编程】DLL相关(1)
  6. 微软阵营企稳的利好消息:.NET开源、Visual Studio免费
  7. 浅谈iOS开发的协议(protocol)和代理(delegate)
  8. HDOJ 2092 整数解(2次方程整数解公式)
  9. 如何使用 Android Studio 的 git hub 功能
  10. 关于SQL中Between语句查询日期的问题
  11. Java线程面试题Top50
  12. Vim的合并行操作
  13. puppet(3) 变量、数据类型、表达式、条件判断语句-if、case、selector、unless
  14. HeadFirst Ruby 第九章总结 mixins &amp; modules
  15. reportviewer需要的3个引用
  16. vue.js路由vue-router
  17. fab提供远程IP和账号密码
  18. spark练习——影评案例
  19. tornado-About Web
  20. Tomcat负载均衡和集群环境的搭建

热门文章

  1. 【转】海量数据处理算法-Bloom Filter
  2. EntityFramework中经常使用的数据改动方式
  3. java 实现打印当前月份的日历
  4. 电子设计省赛--PID
  5. oracle 导出导入不含数据的空库
  6. Error CREATEing SolrCore &#39;new_core&#39;: Unable to create core [new_core] Caused by: Can&#39;t find resource &#39;solrconfig.xml&#39; in classpath or &#39;D:\solr\solr-7.2.1\server\solr\new_core&#39;
  7. 并不对劲的bzoj5341:loj2553:uoj400:p4565:[Ctsc2018]暴力写挂
  8. python调用window dll和linux so例子
  9. vss操作说明
  10. char-rnn-tensorflow源码解析及结构流程分析