目录
[算法题解] 李白打酒
题目详情问题描述
题目描述
运行限制
代码实现cpp
运行结果
总结 分享算法题解是我记录学习、交流进步的方式~如果这篇文章对你有帮助,欢迎关注我的 CSDN 账号杰克尼,后续会持续更新更多算法题解、编程技巧,一起在代码的世界里探索成长!
嗨,大家好!我是 杰克尼,最近在疯狂刷算法题提升编程能力~今天分享一道很有意思的算法题解题过程。无论是算法新手还是想交流思路的小伙伴,都希望这篇文章能给你带来启发,一起在算法的世界里 “打怪升级”!
李白打酒
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
话说大诗人李白,一生好饮。幸好他从不开车。
一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱:
无事街上走,提壶去打酒。 逢店加一倍,遇花喝一斗。
这一路上,他一共遇到店5次,遇到花 1010 次,已知最后一次遇到的是花,他正好把酒喝光了。
请你计算李白遇到店和花的次序,可以把遇店记为 aa,遇花记为 bb 。则:babaabbabbabbbbbabaabbabbabbbb 就是合理的次序。像这样的答案一共有多少呢?请你计算出所有可能方案的个数(包含题目给出的)。
#include
using namespace std;
int han(int a,int b,int now){
if(a==0)
return (b==now)?1:0;
if(b==0)
return (a==0&&now==0)?1:0;
return han(a-1,b,now*2)+han(a,b-1,now-1);
}
int main(){
cout<