数学整合 新(LUOGU)
1.卡特兰数(P2532)
递推式:h(n)=C(2n,n)/(n+1) (n=0,1,2,...)
前十项(从零开始):1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862,
int n;
unsigned long long a[<<]; int main(){
n=read();
a[]=; a[]=;
for(rint i=;i<=n+n;i++) a[i]=1ull*a[i-]*i;
unsigned long long ans=a[n+n]/a[n]/a[n]/(n+);
cout<<ans<<endl;
return ;
}
2.第二类斯特林数(P3904)
s(n,0)=0^n; s(n,1)=s(n,n)=1; s(n,m)=s(n-1,m-1)+m*s(n-1,m);
//不加高精
int n,m;
int f[][]; int main(){
n=read();m=read();
memset(f,,sizeof(f));
for(rint i=;i<=n;i++) f[i][]=;
for(rint j=;j<=m;j++)
for(rint i=;i<=n;i++)
f[i][j]=f[i-][j-]+j*f[i-][j];
cout<<f[n][m];
return ;
}
//使用高精
int n,m;
long long f[][][]={}; inline void update(int u,int v){
for(rint i=;i<=max(f[u-][v-][],f[u-][v][]);i++)
f[u][v][i]+=f[u-][v-][i]+f[u-][v][i]*v; f[u][v][]=max(f[u-][v][],f[u-][v-][]); for(rint i=;i<=f[u][v][];i++)
f[u][v][i+]+=f[u][v][i]/,
f[u][v][i]=f[u][v][i]%; while(f[u][v][f[u][v][]+]){
f[u][v][]++;
f[u][v][f[u][v][]+]+=f[u][v][f[u][v][]]/;
f[u][v][f[u][v][]]%=;
}
} int main(){
n=read();m=read();
memset(f,,sizeof(f));
f[][][]=;f[][][]=; for(rint i=;i<=n;i++)
for(rint j=;j<=i;j++)
update(i,j); if(f[n][m][]==){
printf("0\n");
return ;
}
for(rint i=f[n][m][];i>=;i--)
cout<<f[n][m][i];
cout<<endl;
return ;
}
3.斐波那契数列(P1962)
Fib[i]=Fib[i-1]+Fib[i-2](Fib[0]=1,Fib[1]=1);
//矩阵乘法
struct matrix{ long long m[][];}a,b,ans;
long long n; const int md=1e9+; inline matrix mul(matrix a,matrix b){
matrix ans;
for(rint i=;i<=;i++)
for(rint j=;j<=;j++){
ans.m[i][j]=;
for(rint k=;k<=;k++)
ans.m[i][j]=(ans.m[i][j]+a.m[i][k]*b.m[k][j])%md;
}
return ans;
} inline matrix matpow(matrix a,long long b){
matrix ans=a;b--;
while(b){
if(b&) ans=mul(ans,a);
a=mul(a,a);
b>>=;
}
return ans;
} int main(){
cin>>n;
if(n<=){ printf("1\n");return ;}
a.m[][]=;a.m[][]=;a.m[][]=;a.m[][]=;
b.m[][]=;b.m[][]=;b.m[][]=;b.m[][]=;
b=matpow(b,n-);
ans=mul(a,b);
cout<<ans.m[][]<<endl;//输出的是下面的f(n) 上面的是f(n+1)
return ;
}
数学整合 新(LUOGU)的更多相关文章
- 整合 新浪 腾讯 人人 qq空间 分享地址
function snsShare(snsId, title, content, image, url) { var snsUrl; // 新浪 腾讯 要申请appkey switch (snsId) ...
- express整合webpack的打包文件dist
对于我来说,第一次接触前后端整合问题的小白,刚开始是一脸懵逼,这个问题整整坑了我一个晚上加一个早上,现在写出来总结: 前端开发:vue-cli+webpack: 后台开发:nodejs框架expres ...
- 新买苹果电脑,mac系统中小白应该了解哪些东西?
本文旨在分享新买了mac电脑,应该做哪些设置,帮助苹果电脑小白轻松上手使用mac电脑,当然,新电脑肯定是需要安装各种软件,这里,小编推荐一下可以看看小编写的mac软件装机必备Mac 装机必备软件推荐, ...
- [Tjoi2018]数学计算
[Tjoi2018]数学计算 BZOJ luogu 线段树分治 是不是想问为什么不暴力做? 模数没说是质数,所以不一定有逆元. 然后就是要每次build一下把线段树权值init成1, 博猪不知道为什么 ...
- SpringBoot入门系列(四)整合模板引擎Thymeleaf
前面介绍了Spring Boot的优点,然后介绍了如何快速创建Spring Boot 项目.不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/ ...
- 软工案例分析之OJ
项目 内容 这个作业属于哪个课程 2021春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 案例分析作业要求 我在这个课程的目标是 和我的团队开发一个真正的软件,一起提升开发与合作的能力 这 ...
- [计算机、网络相关历史]unix简史
本文2001年由台湾“网络农夫”所写,其人生平不祥,此文受鸟哥大力推崇,两人应该相识.文章写得很不错,应该是查了很多资料整理而成的,美中不足的是好多语句不通顺,国考语文绝对不及格,哈哈. 0.我的准备 ...
- 读书笔记2013第10本:《学得少却考得好Learn More Study Less》
<学得少却考得好Learn More Study Less>这本书最早是从褪墨网站上看到的,crowncheng翻译了全文.这本书介绍了不少学习方法,非常适合在校的学生,原文的作者Scot ...
- 第27本:《学得少却考得好Learn More Study Less》
第27本:<学得少却考得好Learn More Study Less> <学得少却考得好Learn More Study Less>这本书最早是从褪墨网站上看到的,crownc ...
随机推荐
- solr联合多个字段进行检索(multivalued和copyfield的使用)
在实际工作中不仅仅对索引中的单个字段进行搜索.需要进行综合查询. 比如book表中有id,name(标题),price,summary(摘要),content(内容),我们要找一本书的时候,查询关键字 ...
- nodejs——压缩文件_archiver
工作需要,由于html无法访问并下载带有中文的路径,例子:“127.0.0.1::8088/files/第一张图片.jpg”,所以想到了先将原图片压缩并命名为不带中文的文件名,下载后用户自行解压缩的方 ...
- 查看linux服务器CPU数量
首先,要区分两个概念:物理CPU和逻辑CPU. 物理CPU就是服务器上实际安装的CPU.但是一个物理CPU可以有多个核.例如,一个 i5 760 是双核,而一个 i5 2250 是四核.如果开启了In ...
- python之ConfigParser
以前傻傻的不知道还有configParser这么方便的模块,都是一个个的解析转换…… 配置文件xxxxx # 注释1 ; 注释2 [section1] # 节点 k1 = v1 # 值 k2: ...
- mysql 定时执行
mysqltablevariables任务sqlinsert 重新定义mysql命令行结束符为//,命令行创建存储过程需要. delimiter // MySQL5.1.x版本中引入了一项新特 ...
- JAVA 文件与base64之间的转化, 以及Web实现base64上传文件
<1>文件与base64字符串之间的转化 package servlet_file_upload; import java.io.File; import java.io.FileInpu ...
- MySQL命令行学习
1.登录mysql 本地:mysql -u root -p, 回车后输入密码; 也可以p后不加空格,直接加密码.回车就登录了 远程:mysql -hxx.xx.xx.xx -u -pxxx 2.查看数 ...
- Git----分支管理之创建与合并分支02
在版本回退里,你已经知道 ,每次提交,Git都把它们串i成一条时间线,这条时间线就是一个分支,截至到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支,HEAD严格来说不是指向提交 ...
- visibility和display
visibility: hidden----将元素隐藏,但是在网页中该占的位置还是占着.display: none----将元素的显示设为无,即在网页中不占任何的位置.
- SpringMVC知识(1)
1.SpringMVC的工作流程 流程 : 1.用户发送请求至前端控制器DispatcherServlet 2.DispatcherServlet收到请求调用HandlerMapping处理器映射器. ...