bzoj 4403(Lucas定理)
传送门
题解:
考虑长度为n,值域为连续m个数的不降子序列。方案有C(n+m-1,n)=C(n+m-1,m-1)种。比如n=4,l=2,r=5,此时m=4,那么就可以视为在{2,3,4,5,x,x,x}中选择n个,比如{2,2,3,3},{2,2,2,3},{2,3,3,3}可以对应3种等价的{2,x,x,3}。
由于组合数有一个公式,如果从n个里选m个,有
C(n,m)=C(n-1,m-1)+C(n-1,m)
从1到n加起来就是:(借用Po爷的图,身边没有公式编辑器或者新版word…)
然后上lucas求即可。
注意:最后答案-1,小心有负数!!!
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll MOD=1e6+3;
int kase;
ll n,l,r,m;
ll fac[MOD+5]={1};
inline void init() {for (register int i=1;i<MOD;++i)fac[i]=fac[i-1]*i%MOD;
}
inline ll fpow(ll a,ll b,ll p) {ll ret=1;while (b) {if (b&1) ret=ret*a%p;b>>=1,a=a*a%p;}return ret;
}
inline ll lucas(ll n,ll m,ll MOD) {ll ret=1;while (n&&m) {ll nn=n%MOD,mm=m%MOD;if (nn<mm) return 0;ret=ret*fac[nn]%MOD*fpow(fac[nn-mm]*fac[mm]%MOD,MOD-2,MOD)%MOD;n/=MOD,m/=MOD;}return ret;
}
int main() {scanf("%d",&kase);init();while (kase--) {scanf("%lld%lld%lld",&n,&l,&r);m=r-l+1;printf("%lld\n",(lucas(n+m,m,MOD)+MOD-1)%MOD);}return 0;
}
bzoj 4403(Lucas定理)相关推荐
- BZOJ 2111 [ZJOI2010]Perm 排列计数:Tree dp + Lucas定理
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2111 题意: 给定n,p,问你有多少个1到n的排列P,对于任意整数i∈[2,n]满足P[i ...
- bzoj 1902: Zju2116 Christopher lucas定理 数位DP
1902: Zju2116 Christopher Time Limit: 1 Sec Memory Limit: 64 MB Submit: 172 Solved: 67 [Submit][St ...
- 数论(Lucas定理) HDOJ 4349 Xiao Ming's Hope
题目传送门 题意:求C (n,0),C (n,1),C (n,2)...C (n,n)中奇数的个数 分析:Lucas 定理:A.B是非负整数,p是质数.AB写成p进制:A=a[n]a[n-1]...a ...
- szucodeforce训练1081C组合数学lucas定理,div2 627的D dfs +剪枝优化,697D Puzzles{dfs序+概率}
给你n个方格排成一行,有m种颜色,然后要把这n个方格分成k+1段,每段涂不同的颜色,问有多少种方法. 组合数学Lucas定理 排列组合问题,首先要在n-1个位置里面选出k个位置当作段与段的分割点,然后 ...
- 【BZOJ1951】【SDOI2010】古代猪文 Lucas定理、中国剩余定理、exgcd、费马小定理
Description "在那山的那边海的那边有一群小肥猪.他们活泼又聪明,他们调皮又灵敏.他们自由自在生活在那绿色的大草坪,他们善良勇敢相互都关心--" --选自猪王国民歌 很久 ...
- HDU 5226 Tom and matrix(组合数学+Lucas定理)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5226 题意:给一个矩阵a,a[i][j] = C(i,j)(i>=j) or 0(i < ...
- 洛谷P3773 [CTSC2017]吉夫特(Lucas定理,dp)
题意 满足$b_1 < b_2 < \dots < b_k$且$a_{b_1} \geqslant a_{b_2} \geqslant \dots \geqslant a_{b_k} ...
- 2015 ICL, Finals, Div. 1 Ceizenpok’s formula(组合数取模,扩展lucas定理)
J. Ceizenpok's formula time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- 『Lucas定理以及拓展Lucas』
Lucas定理 在『组合数学基础』中,我们已经提出了\(Lucas\)定理,并给出了\(Lucas\)定理的证明,本文仅将简单回顾,并给出代码. \(Lucas\)定理:当\(p\)为质数时,\(C_ ...
- loj 300 [CTSC2017]吉夫特 【Lucas定理 + 子集dp】
题目链接 loj300 题解 orz litble 膜完题解后,突然有一个简单的想法: 考虑到\(2\)是质数,考虑Lucas定理: \[{n \choose m} = \prod_{i = 1} { ...
最新文章
- 再来一个吊打百度网盘的开源神器,还是99年妹子开发的
- python3 日志检索异常抛出异常 raise KeyError(key),KeyError: 'formatters'
- DFS深度优先搜索算法/BFS广度优先搜索算法(c/c++)
- IE8 Beta2 AJAX 的更新篇之XDR(二)(IE8 Beta2 Hand-on Lab-XDR)
- 搞定高并发,岂能不懂Synchronized底层原理?
- python天天向上的力量 A
- HTTP标准相关的基础概念
- python爬取b站403_使用Python爬取B站全站视频信息
- CMOS checksum error-Defaults loaded 故障解决办法
- [IOS]NSUserDefaults读取和写入
- Android中的armeabi等如何适配
- onlyoffice pdf 乱码
- Horizon8桌面虚拟化(一)
- 解决HC05蓝牙模块主从配对失败及AT模式设置方案
- R语言入门——画密度曲线
- 人像抠图软件哪个好?这些软件助你实现人像抠图
- 前端H5各种qq,微博,fb,whatsapp等网页分享的链接
- 47、SimpleOrientationSensor
- mysql怎么样修改schema_MySQL 5.6使用pt-online-schema-change在线修改大表字段长度
- 路由器无线桥接的方法