2014蓝桥一道算法

答案来源于蓝桥杯老师
李白打酒问题:
共有五个店,共遇10次话,遇店加一倍,遇花喝一斗,
最后一次遇到的是花正好喝完。
初始有两斗,问李白遇到花和店的先后顺序一共有多少种;
利用深搜去递归
代码如下

#include <iostream>
using namespace std;
int count=0;
void f(int hotel,int flower,int liquor ) //liquor 酒
{
 if(hotel==0&&flower==0&&liquor==1)
     count++;
 if(hotel>0) f(hotel-1,flower,liquor*2);
 if(flower>0) f(hotel,flower-1,liquor-1);
}
int main()
{
	f(5,9,2);
	cout<<count;
return 0;
}

结果为 14

发布了16 篇原创文章 · 获赞 3 · 访问量 1234

猜你喜欢

转载自blog.csdn.net/delete_bug/article/details/104999632