|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目描述
话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱:
无事街上走,提壶去打酒。逢店加一倍,遇花喝一斗。
这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。则babaabbabbabbbb 就是合理的次序。像这样的答案一共有多少呢?请你计算出所有可能方案的个数。
为了使问题更加有趣,我们假设他遇到店s
次,花f
次,你的任务是计算此时的方案总数。
输入描述
两个整数s
和f
,分别表示李白遇到的店和花的次数。(s+f≤20
)
输出描述
一个整数,表示方案总数。
我的代码如下:
#include<bits/stdc++.h>
using namespace std;
int count=0;
void fun(int s,int f,int j)
{
if(s==0&&f==1&&j==1)
{
count++;
return;
}
if(s>0)
fun(s-1,f,j*2);
if(f>0)
fun(s,f-1,j-1);
}
int main()
{
int s,f;
cin>>s>>f;
fun(s,f,2);
cout<<count;
}
请问这个哪里错了 |
|