E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
BZOJ4403
【LOJ10235】【
BZOJ4403
】序列统计
题目链接解法:首先,我们设表示满足条件的序列中,长度为i,最后一个数字为L+j-1的序列个数。那我们就可以得到一下递推式:(其中对于每一个f[1][n]或者f[n][1]其值都为1),近一步推到.且我们所要求的答案是.我们考虑化简答案的式子,由递推式得:,所以原答案式=.=.又由得,原式=接下来引出一个结论:,以下是证明:在一个正方形中,对于每一条从(1,1)走到(i,j)的最短路,(相邻格子移动
ZGS_WZY
·
2020-08-18 13:47
组合数学
bzoj4403
序列统计 ( 组合数学 + lucas )
bzoj4403
序列统计原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4403题意:多组数据。
Bfk_
·
2017-10-20 22:49
题解
逆元
组合数学
lucas
[
BZOJ4403
][Lucas定理]序列统计
ZJOI2017DAY2滚粗后刷一发水题……这题显然跟l,r的值没关系,但是跟r−l+1有关,另其为m那么考虑最后的数列一定是有a1个l,a2个l+1,a3个l+2…am个r组成,其中ai是大于等于0的整数。那么答案就是1≤∑mi=1ai≤n的解的个数其实就是∑mi=1ai≤n的解的个数减一考虑转化一下变成1∑mi=1(ai+1)≤n+m就相当于有n+m长度的序列,要选择m个数的方案,就是Cmm+
LowestJN
·
2017-04-28 20:43
排列组合
[
BZOJ4403
]序列统计(lucas定理)
题目描述传送门题解首先这道题选出来的数只在于选的数本身,而不在于顺序,以为反正到最后要排序的令r-l+1=m,也就是一共有m个数可选,那么设每一个数被选的个数为xi,那么x1+x2+…+xm=n也就相当于将n个小球放到m个盒子里,显然插板,答案为Cm−1n+m−1那么这道题的答案就是Cm−11+m−1+Cm−12+m−1+...+Cm−1n+m−1在前面加一项Cm1+m−1=1,再根据Cji=Cj
Clove_unique
·
2017-03-30 18:10
题解
组合数学
【
BZOJ4403
】序列统计【Lucas定理】
【题目链接】同【CodeChef-CSEQ的题解】/*TelekineticForestGuard*/#include#include#includeusingnamespacestd;typedefunsignedlonglongULL;constintmaxn=1000505;constULLp=1000003;ULLfact[maxn];inlineintiread(){intf=1,x=0
BraketBN
·
2016-05-02 21:03
组合数学
【
BZOJ4403
】序列统计【Lucas定理】
【题目链接】同【CodeChef-CSEQ的题解】/*TelekineticForestGuard*/ #include #include #include usingnamespacestd; typedefunsignedlonglongULL; constintmaxn=1000505; constULLp=1000003; ULLfact[maxn]; inlineintirea
BraketBN
·
2016-05-02 21:00
BZOJ4403
: 序列统计
推导式子(baidu可得设M=R−L+1长度为i,元素大小在1…M之间的单调不降序列的数量有CM−1i+M−1个故答案为∑ni=1CM−1i+M−1=(∑ni=1CM−1i+M−1)+CMM-1=(∑ni=2CM−1i+M−1)+CMM+1-1=(∑ni=3CM−1i+M−1)+CMM+2-1…=CMN+M-1(n+m)!/(n!∗m!)ModQ=(Q−1)![(n+m)/Q]∗((n+m)Mod
liutian429073576
·
2016-04-12 18:00
【
bzoj4403
】序列统计 组合
假设序列长度为n,区间为[l,r],首先求出这一段的答案。 对于任意一个序列,将第i个数+i,那么原来的问题就转化为了n个在[l+1,r+n]区间以内的单调递增的序列的个数。后者又相当于在[l+1...r+n]这r-l+n个数中取n个的方案数,即为C(r-l+n,n)=C(r-l+n,r-l) 所以,答案就相当于C(r-l+1,r-l)+C(r-l+2,r-l
lych_cys
·
2016-01-31 23:00
组合
数学
lucas
快速幂
定理
逆
bzoj4403
序列统计
我们很容易知道要求的式为由公式化得lucas定理求得1#include 2usingnamespacestd; 3 4constlonglongMOD=(longlong)1e6+3; 5constlonglongMAXN=MOD; 6 7longlongmypow(registerlonglonga,registerintn){ 8registerlonglongans=1; 9
Chris_Cao
·
2016-01-22 08:00
bzoj4403
: 序列统计
我们很容易发现答案是C(R-L+N+1,N)-1然后用一下lucas定理就行了#include #include #include #include #include #include #definelllonglong #defineP1000003 usingnamespacestd; intpow2(intx,inty){ intret=1; while(y){
wangyurzee
·
2016-01-21 16:00
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他