数论-朴素卢卡斯(Lucas)模板
montgomery() 函数计算 t1^t2 % p 的值.
1 typedef long long LL; 2 3 LL mont(LL t1, LL t2) 4 { 5 LL ans = 1; 6 t1 %= _P; 7 while (t2) { 8 if (t2 & 1) ans = ans*t1%_P; 9 t2 >>= 1, t1 = t1*t1%_P; 10 } 11 return ans; 12 } 13 14 LL C(LL dn, LL up) 15 { 16 if (!up || up == dn) return 1; 17 if (dn-up < up) up = dn-up; 18 LL t1 = 1, t2 = 1; 19 for (LL i = 1; i <= up; ++i) { 20 t1 = t1 * i % _P; 21 t2 = t2 * (dn-i+1) % _P; 22 } 23 return t2 * mont(t1, _P-2) % _P; 24 } 25 26 LL Lucas(LL dn, LL up) 27 { 28 if (!up) return 1; 29 return C(dn%_P, up%_P) * Lucas(dn/_P, up/_P) % _P; 30 }
转载于:https://www.cnblogs.com/ghcred/p/7436745.html
数论-朴素卢卡斯(Lucas)模板相关推荐
- kuangbin 最小生成树专题 - ZOJ - 1586 QS Network (朴素 Prim算法 模板题)
kuangbin 最小生成树专题 - ZOJ - 1586 QS Network (朴素 Prim算法 模板题) 总题单 week 3 [kuangbin带你飞] 题单 最小生成树 + 线段树 Cli ...
- 数学--数论--组合数(卢卡斯+扩展卢卡斯)模板
ACM常用模板合集 #include<cstdio> const int N = 2000 + 5; const int MOD = (int)1e9 + 7; int comb[N][N ...
- 『数学』--数论--组合数+卢卡斯定理+扩展卢卡斯定理
组合数: 在N个数中选取M个数,问选的方式有几种? 直接递归暴力简单 #include<cstdio> const int N = 2000 + 5; const int MOD = (i ...
- 数学--数论---欧拉筛 模板
ACM常用模板合集 typedef long long ll; bool ok[maxn]; int prime[maxn],phi[maxn],cnt; void sieve() { phi[1]= ...
- 数论一些奇怪的模板题(贺题福利)
法雷序列(欧拉函数的前缀和) 组合数取模(卡速米求逆元) 乘法逆元(扩展欧几里得求逆元) 筛素数(埃氏筛(线性筛)求素数) 欧拉函数(O(sqrt(n))求欧拉函数) 网格的走法(卡特兰数取模) 又一 ...
- 洛谷P2181答案C语言,洛谷P2181 对角线(组合数)
题目描述 对于一个N个定点的凸多边形,他的任何三条对角线都不会交于一点.请求楚图形中对角线交点的个数. 例如,6边形: 输入输出格式 输入格式: 第一行一个n,代表边数. 输出格式: 第一行输出交点数 ...
- [洛谷P3807]【模板】卢卡斯定理
题目大意:给你$n,m,p(p \in \rm prime)$,求出$C_{n + m}^m\bmod p(可能p\leqslant n,m)$ 题解:卢卡斯$Lucas$定理,$C_B^A\bmod ...
- 数论-扩展中国剩余定理
求解 n 个同余方程 x ≡ Ci (mod Mi) 推荐一下讲证明的文章: 1.https://www.cnblogs.com/TheRoadToTheGold/p/8458326.html 很简洁 ...
- 『ACM』ACM模板合集
写在前面: 第一年小白拿铜牌,第二年队友出走,加上疫情原因不能回校训练导致心底防线彻底崩盘,于是选择退役. 自从退役之后,一直想我打了那么久的ACM,什么也没留下觉得很难受,突然想到我打ACM的时候, ...
最新文章
- nodejs操作mysql创建库和表_Nodejs操作MySQL数据库
- JDK12下的ArrayList源码解读 与 Vector的对比
- global.min.css,css3-媒体查询样式不覆盖原始样式
- 计算机网络之物理层:3、奈式准则和香农公式
- PyOpenGL之3D界面详解(五)
- python x y 定位点击,python - Python找到一个点相对于其他四个已知点的x,y位置 - 堆栈内存溢出...
- 特斯拉副总裁回应“质量不合格”报道:离谱 已准备起诉
- 1.[精通Hibernate笔记]Hibernate简介
- ISIS 中 Level1-2路由器向本区域内Level-1邻居下发缺省路由
- 让webstorm支持avalon语法自动补全
- element ui 选项卡切换_Vue.js + element-ui 扫盲(服务端对大前端的扫盲)
- 联想集团杨元庆:联想携手SAP解决用户云计算应用痛点
- 手撕包菜磁力搜索引擎的开源说明
- hashmap按值排序
- ZEMAX | 如何创建复杂的非序列物体
- launching IDEA-If you already have a 64-bit JDK installed, define a JAVA_HOME...问题解析处理
- 改进的树状长短期记忆网络(Tree-LSTM)语义表示
- Excel快捷键:Ctrl+E的功能汇总
- 台风怎么看内存颗粒_高体质CJR颗粒!七彩虹CVN捍卫者内存评测
- python for ArcGIS 绘制上海市环线地图