当前位置: 首页 > wzjs >正文

常州市建设局网站6河北seo推广公司

常州市建设局网站6,河北seo推广公司,网站制作 用户登录系统,政府网站信息化工程建设方案【题目来源】 https://www.luogu.com.cn/problem/P8705 【题目描述】 把 1∼2020 放在 21010 的矩阵里。要求同一行中右边的比左边大,同一列中下边的比上边的大。一共有多少种方案? 答案很大,你只需要给出方案数除以 2020 的余数即可。 【答案提交】 …

【题目来源】
https://www.luogu.com.cn/problem/P8705

【题目描述】
1∼2020 放在 2×1010 的矩阵里。要求同一行中右边的比左边大,同一列中下边的比上边的大。一共有多少种方案?
答案很大,你只需要给出方案数除以 2020 的余数即可。

【答案提交】
这是一道结果
填空题,你只需要算出结果后提交即可。
本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

【算法分析】
● 卡特兰数(Catalan number)是
组合数学中一个常出现在各种计数问题中的数列。若从第 0 项开始,则卡特兰数列 h[n] 为:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, …。

● 常用的卡特兰数列 h[n] 有如下 4 种等价的递推式
h[n]=
h[0]*h[n−1]+h[1]*h[n−2]+...+h[n−1]*h[0], (n≥2, h[0]=h[1]=1)
h[n]=h[n−1]*(4*n−2)/(n+1), (n≥2)
h[n]=C(2n,n)−C(2n,n−1), (n=0,1,2,...)
h[n]=C(2n,n)/(n+1), (n=0,1,2,...)

● 卡特兰数的第 20 项为 6564120420,大于 2×10^9,所以代码中要声明为
long long 型。

● 矩阵填充与进栈出栈过程的对应关系以及和卡特兰数的联系
(1)第一行填充对应
进栈:当我们从左到右填充矩阵的第一行时,每放入一个数字,就相当于一个元素进栈。因为第一行的数字是依次增大的,就好像元素依次进入栈中,且栈内元素是按照进栈顺序依次排列(从小到大)。
(2)第二行填充对应
出栈:当我们开始填充矩阵的第二行时,由于要满足同一列下边的数字比上边大,所以放入第二行的数字必须是已经在第一行出现过的数字,这就类似于元素出栈。

(3)可以将进栈(push)操作看作在平面直角坐标系中向沿 x 轴正向走一步,出栈(pop)操作看作沿 y 轴正向走一步。要完成 n 个元素的进栈和出栈操作,最终需要从原点(0,0)走到点(n,n)。但由于合法的进栈出栈序列要求在任何时刻出栈次数不超过进栈次数,所以对应的路径不能穿过直线 y=x,只能在直线 y=x 及其下方行走。最终,可得合法的出栈序列数就是卡特兰数的第 n 项:h[n]=h[0]*h[n−1]+h[1]*h[n−2]+...+h[n−1]*h[0], (n≥2, h[0]=h[1]=1)。

【算法代码】

#include<bits/stdc++.h>
using namespace std;const int maxn=2e5+5;
long long c[maxn];
int n;int main() {cin>>n; //n=1010c[0]=1,c[1]=1;for(int i=2; i<=n; i++) {for(int j=0; j<=i-1; j++) {c[i]+=c[j]*c[i-j-1];c[i]%=2020;}}cout<<c[n];return 0;
}/*
in:1010
out:1340
*/





【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/145830268
https://blog.csdn.net/hnjzsyjyj/article/details/145842440
https://blog.csdn.net/hnjzsyjyj/article/details/129148916
https://www.acwing.com/file_system/file/content/whole/index/content/3766019/
 

http://www.dtcms.com/wzjs/401218.html

相关文章:

  • 51自学网网站开发网络推广和网站推广平台
  • 手机免费网站搜索引擎优化方式
  • 帝国cms怎么做淘客网站北京百度竞价托管公司
  • 小猪网站怎么做的什么是搜索引擎推广
  • 杭州企业网站设计公司个人网站免费推广
  • 做期货主要看哪几个财经网站名词解释seo
  • 东莞市工商注册登记官网seo博客模板
  • 建一个类似京东的网站市场营销策略有哪些
  • 怎样自己做网站推广厦门网站seo外包
  • 网站开发的基本过程百度竞价排名一年费用
  • 郑州做网站建设公司优化营商环境条例
  • 做昆特牌的网站网站外链是什么
  • 雄县哪做网站我要恢复百度
  • 区域城市分站网站怎么做网站软文推广网站
  • 论坛型网站怎么做的原创代写文章平台
  • 菏泽手机网站建设站长工具seo综合查询5g
  • 网站开发的权限设置网络营销专业是做什么的
  • whois哪个网站好西安网站seo公司
  • 外贸论坛福步宁波seo网络推广
  • 国外网站建设方案网站建设推广优化
  • iis ip访问网站seo查询seo
  • 新网站如何做营销google官方入口
  • 网站301在哪做手机制作网页
  • 温州网站排名优化谷歌在线搜索
  • 揭阳做网站seo资源网站排名
  • 部队网站制作站长网站查询
  • 北京兄弟搬家公司seo百度推广
  • 网络做网站如何盈利网站提交收录入口链接
  • 动态网站开发工作什么是百度竞价
  • 服务器怎么直接用ip做网站百度推广竞价排名技巧