Description
栈是常用的一种数据结构,有n个元素在栈顶端一侧等待进栈,栈顶端另一侧是出栈序列。你已经知道栈的操作有两种: push 和 pop ,前者是将一个元素进栈,后者是将栈顶元素弹出。现在要使用这两种操作,由一个操作序列可以得到一系列的输出序列。请你编程求出对于给定的n,计算并输出由操作数序列1 ,2 ,... ,n,经过一系列操作可能得到的输出序列总数 mod 7 的值。
Input
一个整数n。
Output
一个数,即可能输出序列的总数目。

Sample Input
3

Sample Onput
5

Data Range
n<=1000
Solution

这是一个经典的组合数学的模型,可以从两个角度来思考。

第一:这是卡特兰数,直接通过卡特兰数的递推公式推导而来。

第二:从格路数的角度思考,这就是从坐标原点不穿越y=x这条直线到(n,n)点的最短路径方案数

即C(2n,n)-C(2n,n-1)。

推导过程:不穿越y=x等价为不碰触y=x-1,即为所有不合法的方案为(0,0)以y=x-1的对称点(1,-1)到(n,n)的方案(一一对应原理)

再用合法方案减去不合法方案即为答案(没看懂的可以参考 《组合数学》卢开澄 清华大学出版社 第一章的解释)

最后递推组合数相减要注意避免出现负数,可以(C(2n,n)-C(2n,n-1)+14) mod 7

Stack [NOIP模拟] [组合数学经典]的更多相关文章

  1. 【noip模拟赛5】细菌 状压dp

    [noip模拟赛5]细菌   描述 近期,农场出现了D(1<=D<=15)种细菌.John要从他的 N(1<=N<=1,000)头奶牛中尽可能多地选些产奶.但是如果选中的奶牛携 ...

  2. NOIP模拟题汇总(加厚版)

    \(NOIP\)模拟题汇总(加厚版) T1 string 描述 有一个仅由 '0' 和 '1' 组成的字符串 \(A\),可以对其执行下列两个操作: 删除 \(A\)中的第一个字符: 若 \(A\)中 ...

  3. 2016-06-19 NOIP模拟赛

          2016-06-19 NOIP模拟赛 by coolyangzc 共3道题目,时间3小时 题目名 高级打字机 不等数列 经营与开发 源文件 type.cpp/c/pas num.cpp/c ...

  4. 8.22 NOIP 模拟题

      8.22 NOIP 模拟题 编译命令 g++ -o * *.cpp gcc -o * *.c fpc *.pas 编译器版本 g++/gcc fpc 评测环境 位 Linux, .3GHZ CPU ...

  5. 8.1 NOIP模拟11

    8.1 NOIP模拟 11 今天上午返校之后,颓了一会,然后下午就开始考试,中午睡着了,然后刚开始考试的时候就困的一匹,我一看T1,woc,这不是之前线段树专题的题啊,和那道题差不多,所以我..... ...

  6. 2019.6.20 校内测试 NOIP模拟 Day 1 分析+题解

    这次是zay神仙给我们出的NOIP模拟题,不得不说好难啊QwQ,又倒数了~ T1 大美江湖 这个题是一个简单的模拟题.   ----zay 唯一的坑点就是打怪的时候计算向上取整时,如果用ceil函数一 ...

  7. NOIP模拟 6.28

    NOIP模拟赛6.28 Problem 1 高级打字机(type.cpp/c/pas) [题目描述] 早苗入手了最新的高级打字机.最新款自然有着与以往不同的功能,那就是它具备撤销功能,厉害吧. 请为这 ...

  8. 5.23考试总结(NOIP模拟2)

    5.23考试总结(NOIP模拟2) 洛谷题单 看第一题第一眼,不好打呀;看第一题样例又一眼,诶,我直接一手小阶乘走人 然后就急忙去干T2T3了 后来考完一看,只有\(T1\)骗到了\(15pts\)[ ...

  9. noip模拟44[我想我以后会碰见计数题就溜走的]

    noip模拟44 solutions 这一场抱零的也忒多了,我也只有45pts 据说好像是把几套题里面最难的收拾出来让我们考得 好惨烈啊,这次的考试我只有第一题骗了40pts,其他都抱零了 T1 Em ...

随机推荐

  1. OS模块常用方法

    #OS模块 #os模块就是对操作系统进行操作,使用该模块必须先导入模块: import os #getcwd() 获取当前工作目录(当前工作目录默认都是当前文件所在的文件夹) result = os. ...

  2. CAS统一登录认证好文汇集贴

    悟空的专栏 https://blog.csdn.net/u010475041/article/category/7156505 LinBSoft的专栏 https://blog.csdn.net/ol ...

  3. Nancy 寄宿IIS

    一:简介 Nancy是一个轻量级的独立的框架,下面是官网的一些介绍: Nancy 是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台,框架的目标是保持尽可能多的方 ...

  4. snmp v3的安全配置 snmp认证与加密配置(53)

    http://www.ttlsa.com/zabbix/snmp-v3-configuration/

  5. 2016-06-19 exshop第5天

    昨天对grails3和spring-security进行了全面的调研并进行了试验,试用下来发现grails3的启动速度.代码修改后刷新速度.内存占用以及架构的设计上更加合理,asset-pipelin ...

  6. jdk 生成证书

    1.生成客户端的私钥,客户端的证书 1)keytool -genkey -alias clientkey -keystore kclient.keystore -validity 36500   2) ...

  7. P1080 国王游戏 贪心 高精度

    题目描述 恰逢 HH国国庆,国王邀请nn 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 nn 位大臣排成一排,国王站在队伍的 ...

  8. 分享一段奇葩的DBMS_JOB书写经历

    declare JOB_ILEARN_ONLINE number :=1; begin dbms_job.submit(JOB_ILEARN_ONLINE,'clear_product;',sysda ...

  9. sql查询月的数据

    https://zhidao.baidu.com/question/557935059.html

  10. Java中System类的相关应用

    1.Runtime: public class RuntimeDemo { public static void main(String[] args) { Runtime runtime=Runti ...