bzoj千题计划299:bzoj1856: [Scoi2010]字符串
http://www.lydsy.com/JudgeOnline/problem.php?id=1856
卡特兰数
从(1,1)走到(n,m),不能走y=x 上方的点,求方案数
从(1,1)走到(n,m)总方案是C(n,m)
不合法的路径一定会经过y=x+1
从第一次碰到y=x+1之后的路径沿y=x+1对称上去,就是一条从(1,1)走到(m-1,n+1)的合法路径
一条从(1,1)走到(m-1,n+1)的合法路径一定会对应着一条从(1,1)走到(n,m)的不合法路径
所以答案为C(n+m,m)-C(n+m,m-1)
#include<cstdio>
#include<iostream> using namespace std; const int mod=; long long Pow(long long a,long long b)
{
long long res=;
for(;b;a=a*a%mod,b>>=)
if(b&) res=res*a%mod;
return res;
} int main()
{
int N,M;
scanf("%d%d",&N,&M);
long long tmp=;
long long m1,n1,m,n,nm;
for(int i=;i<=M-;++i) tmp=tmp*i%mod;
m1=Pow(tmp,mod-);
tmp=tmp*M%mod;
m=Pow(tmp,mod-);
for(int i=M+;i<=N;++i) tmp=tmp*i%mod;
n=Pow(tmp,mod-);
tmp=tmp*(N+)%mod;
n1=Pow(tmp,mod-);
for(int i=N+;i<=N+M;++i) tmp=tmp*i%mod;
nm=tmp;
cout<<(nm*n%mod*m%mod-nm*m1%mod*n1%mod+mod)%mod;
}
bzoj千题计划299:bzoj1856: [Scoi2010]字符串的更多相关文章
- bzoj千题计划319:bzoj2865: 字符串识别(后缀自动机 + 线段树)
https://www.lydsy.com/JudgeOnline/problem.php?id=2865 同上一篇博客 就是卡卡空间,数组改成map #include<map> #inc ...
- bzoj千题计划300:bzoj4823: [Cqoi2017]老C的方块
http://www.lydsy.com/JudgeOnline/problem.php?id=4823 讨厌的形状就是四联通图 且左右各连一个方块 那么破坏所有满足条件的四联通就好了 按上图方式染色 ...
- bzoj千题计划177:bzoj1858: [Scoi2010]序列操作
http://www.lydsy.com/JudgeOnline/problem.php?id=1858 2018 自己写的第1题,一遍过 ^_^ 元旦快乐 #include<cstdio> ...
- bzoj千题计划301:bzoj4259: 残缺的字符串
https://www.lydsy.com/JudgeOnline/problem.php?id=4259 令通配符=0 f[i+m-1]=Σ (a[i+j]-b[m-1-j])^2 * a[i+j] ...
- bzoj千题计划196:bzoj4826: [Hnoi2017]影魔
http://www.lydsy.com/JudgeOnline/problem.php?id=4826 吐槽一下bzoj这道题的排版是真丑... 我还是粘洛谷的题面吧... 提供p1的攻击力:i,j ...
- bzoj千题计划250:bzoj3670: [Noi2014]动物园
http://www.lydsy.com/JudgeOnline/problem.php?id=3670 法一:KMP+st表 抽离nxt数组,构成一棵树 若nxt[i]=j,则i作为j的子节点 那么 ...
- bzoj千题计划207:bzoj1879: [Sdoi2009]Bill的挑战
http://www.lydsy.com/JudgeOnline/problem.php?id=1879 f[i][j] 表示匹配了i个字符,匹配字符串的状态为j的方案数 枚举下一个字符是什么 计算加 ...
- bzoj千题计划185:bzoj1260: [CQOI2007]涂色paint
http://www.lydsy.com/JudgeOnline/problem.php?id=1260 区间DP模型 dp[l][r] 表示涂完区间[l,r]所需的最少次数 从小到大们枚举区间[l, ...
- bzoj千题计划280:bzoj4592: [Shoi2015]脑洞治疗仪
http://www.lydsy.com/JudgeOnline/problem.php?id=4592 注意操作1 先挖再补,就是补的范围可以包含挖的范围 SHOI2015 的题 略水啊(逃) #i ...
随机推荐
- Docker 网络部分的简单学习以及转帖别人的blog
1. 感谢一下 大神: http://www.cnblogs.com/sparkdev/ 最近有时间的话 就会读一下他的博客.学习了解docker相关的知识 今天简单做了下 测试 在这里面记录一下. ...
- SpringBoot(十五)_springboot实现预览pdf
最近,项目上要做个打印的东西,还要预览.我想就直接生成pdf预览,然后用户选择打印 于是,昨天找了找资料.一般用itext 进行转pdf.于是我就用springboot试了试,代码比较简单,现在只是简 ...
- delphi中怎么获取服务器的时间
下面是公司的代码,调整成ADO控件,给你参考一下: function GetNetDate: TDateTime; begin with TADOQuery.Create(nil) do begin ...
- Bootstrap手风琴效果
前面的话 Bootstrap 框架中 Collapse插件(折叠)其实就是我们常见的手风琴效果.当单击一个触发元素时,在另外一个可折叠区域进行显示或隐藏,再次单击时可以反转显示状态.经典的场景是多个折 ...
- DeBruijin HDU - 2894(????????)
题意: 莫名其妙 看不懂..只能靠别人的题意混日子 a完就懂了 就是 POJ1392 不求第k个了 直接输出这个路径 emm ...就改了一下那个代码 #include <iostream ...
- BroadcastReceiver 接收系统短信广播
BroadcastReceiver 接收系统短信广播 /* 注册广播: * |--静态注册 (在AndroidManifest .xml 中注册) * <receiver androi ...
- 洛谷 P2774 方格取数问题 解题报告
P2774 方格取数问题 题目背景 none! 题目描述 在一个有 \(m*n\) 个方格的棋盘中,每个方格中有一个正整数.现要从方格中取数,使任意 2 个数所在方格没有公共边,且取出的数的总和最大. ...
- luogu2149 Elaxia的路线 (dijkstra+拓扑dp)
先标记上一个人所有最短路上的边(同时也要标记反向边) 然后拿着另一个人最短路上的边(会构成一个DAG)去做拓扑dp,记从原点到某个点的最大的某个路径的被标记的边的个数 #include<bits ...
- BloodHound官方使用指南
0x00 概观 1.BloodHound介绍 BloodHound是一种单页的JavaScript的Web应用程序,构建在Linkurious上,用Electron编译,NEO4J数据库是Power ...
- CRT&EXCRT 中国剩余定理及其扩展
前言: 中国剩余定理又名孙子定理.因孙子二字歧义,常以段子形式广泛流传. 中国剩余定理并不是很好理解,我也理解了很多次. CRT 中国剩余定理 中国剩余定理,就是一个解同余方程组的算法. 求满足n个条 ...