「题解」:[AHOI2012] 树屋阶梯
A掉了第一道题然后就去肝第四题,被路过的Larry大神看到了。
L:你怎么还没过掉第三题? 我:…… L:快我帮你过掉!
他拉下来我第一题的码,手改了两个参数,半分钟后:AC ……
然后我就理所当然的去颓废了。
Miemeng:你别颓了!
818:第三题你能推出来为啥是卡特兰吗?
我:……
然后一场NC气息十足的推(颓?)就开始了……
^废话^
题面:
题目描述:
暑假期间,小龙报名了一个模拟野外生存作战训练班来锻炼体魄,训练的第一个晚上,教官就给他们出了个难题。由于地上露营湿气重,必须选择在高处的树屋露营。小龙分配的树屋建立在一颗高度为N+1尺(N为正整数)的大树上,正当他发愁怎么爬上去的时候,发现旁边堆满了一些空心四方钢材(如图1.1),经过观察和测量,这些钢材截面的宽和高大小不一,但都是1尺的整数倍,教官命令队员们每人选取N个空心钢材来搭建一个总高度为N尺的阶梯来进入树屋,该阶梯每一步台阶的高度为1尺,宽度也为1尺。如果这些钢材有各种尺寸,且每种尺寸数量充足,那么小龙可以有多少种搭建方法?(注:为了避免夜里踏空,钢材空心的一面绝对不可以向上。)
输入格式:
一个正整数 N(1≤N≤500),表示阶梯的高度
输出格式:
一个正整数,表示搭建方法的个数。(注:搭建方法个数可能很大。)
输入样例:
输出样例:
题解:
不靠谱大神lyl:这不是显然吗,样例3、5,卡特兰啊!
稍靠谱大神xkl:你推一下1的情况和2的情况,这就是卡特兰啊!
emmmm……
不管他们我们自己推:
写出来卡特兰的式子:$h(n)=h(n-1)*h(0)+h(n-2)*h(1)+……+h(0)*h(n-1) (n>=2)$
为了方便,我们把一个$n$层高的用$n$块钢材搭建而成的阶梯称为$n$阶阶梯
我们发现:当前的$n$阶阶梯完全可以由左上角的一个$i$阶阶梯和一个右下角的$n-i-1$阶阶梯,再拉过来一块合法钢材组成。

^有图有真相^
为啥是一块??依据上图,我们发现,黄色的二阶阶梯和蓝色的二阶阶梯已经占用了两块合法钢材,
然而一个$n$阶阶梯只能由n块合法钢材搭建而成。
于是我们愉悦的推出一个式子:(设$f(i)$为搭建一个$i$阶阶梯使用$i$块钢材的总方案数)
$f(i)=f(0)*f(n-1)+f(1)*f(n-2)+……+f(n-1)*f(0)$
和卡特兰的式子一毛一样有没有!于是我们就能愉快的利用卡特兰来解决这个问题了!
代码留坑
「题解」:[AHOI2012] 树屋阶梯的更多相关文章
- [AHOI2012]树屋阶梯 题解(卡特兰数)
[AHOI2012]树屋阶梯 Description 暑假期间,小龙报名了一个模拟野外生存作战训练班来锻炼体魄,训练的第一个晚上,教官就给他们出了个难题.由于地上露营湿气重,必须选择在高处的树屋露营. ...
- P2532 [AHOI2012]树屋阶梯
题目:P2532 [AHOI2012]树屋阶梯 思路: 打表之后不难看出是裸的Catalan数.简单证明一下: 对于任意一种合法方案,都可以表示为在左下角先放一个\(k*(n+1-k),k\in[1, ...
- BZOJ 2822: [AHOI2012]树屋阶梯 [Catalan数 高精度]
2822: [AHOI2012]树屋阶梯 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 779 Solved: 453[Submit][Status] ...
- 【BZOJ 2822】2822: [AHOI2012]树屋阶梯(卡特兰数+高精度)
2822: [AHOI2012]树屋阶梯 Description 暑假期间,小龙报名了一个模拟野外生存作战训练班来锻炼体魄,训练的第一个晚上,教官就给他们出了个难题.由于地上露营湿气重,必须选择在高处 ...
- 洛谷P2532 [AHOI2012]树屋阶梯(Catalan数)
P2532 [AHOI2012]树屋阶梯 题目描述 输入输出格式 输入格式: 一个正整数N(1<=N<=500),表示阶梯的高度. 输出格式: 一个正整数,表示搭建方法的个数.(注:搭建方 ...
- bzoj2822[AHOI2012]树屋阶梯(卡特兰数)
2822: [AHOI2012]树屋阶梯 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 879 Solved: 513[Submit][Status] ...
- 「题解」「美团 CodeM 资格赛」跳格子
目录 「题解」「美团 CodeM 资格赛」跳格子 题目描述 考场思路 思路分析及正解代码 「题解」「美团 CodeM 资格赛」跳格子 今天真的考自闭了... \(T1\) 花了 \(2h\) 都没有搞 ...
- 「题解」「HNOI2013」切糕
文章目录 「题解」「HNOI2013」切糕 题目描述 思路分析及代码 题目分析 题解及代码 「题解」「HNOI2013」切糕 题目描述 点这里 思路分析及代码 题目分析 这道题的题目可以说得上是史上最 ...
- 「题解」JOIOI 王国
「题解」JOIOI 王国 题目描述 考场思考 正解 题目描述 点这里 考场思考 因为时间不太够了,直接一上来就着手暴力.但是本人太菜,居然暴力爆 000 ,然后当场自闭- 一气之下,发现对 60pts ...
随机推荐
- jquery操作html元素之(设置内容和属性)
设置内容 - text().html() 以及 val() 我们将使用前一章中的三个相同的方法来设置内容: text() - 设置或返回所选元素的文本内容 html() - 设置或返回所选元素的内容( ...
- JAVA利用JXL导出 EXCEL (在原有的excel模板上把数据导到excel上)
添加依赖 <dependency> <groupId>net.sourceforge.jexcelapi</groupId> <artifactId>j ...
- 04E: Sub-process /usr/bin/dpkg returned an error code (1)
- [MtOI2019]幽灵乐团
题目 一个很暴力的辣鸡做法 考虑到两个数的\(\gcd\)是所有质数次幂取\(\min\),两个数的\(\rm lcm\)是所有质数次幂取\(\max\),于是最后的答案一定是\(\prod p_i^ ...
- element-ui表格合计不显示&被遮挡问题
step1:修改全局样式 .el-table{ overflow:visible !important; } .el-card__body { padding: 20px 20px 50px 20px ...
- BBS论坛 自定义form组件
二.自定义form组件 from django import forms from django.forms import widgets from app01 import models # 定制f ...
- 常用指令linux总结
linux的基础操作命令: 常见命令: man 查看帮助文档 用法:man + 命令 help 查看指定命令的用法 用法: 命令 --help(有空格) tab linux下命令与文件名补全 用法:在 ...
- VBA当中的时间日期函数
目前还没发现VBA中有直接的函数能够将完整的年月日时分秒的文本格式日期转换成日期型日期的,那只能使用间接实现的办法.用dateserial + timeserial的方法.因为dateserial和t ...
- 人脸识别--Open set和Close set的区别
训练和测试人脸识别分类器时,总会提到Open-set和Close-set.这俩词到底是什么概念呢?有什么区别呢? 所谓close-set,就是所有的测试集都在训练集中出现过.所以每次的预测直接得出测试 ...
- kaptcha 实现验证码
依赖 <dependency> <groupId>com.github.penggle</groupId> <artifactId>kaptcha< ...