話說大詩人李白,一生好飲。幸好他從不開車。
一天,他提着酒壺,從家裏出來,酒壺中有酒2鬥。他邊走邊唱:
無事街上走,提壺去打酒。
逢店加一倍,遇花喝一斗。
這一路上,他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。
請你計算李白遇到店和花的次序,可以把遇店記爲a,遇花記爲b。則:babaabbabbabbbb 就是合理的次序。像這樣的答案一共有多少呢?請你計算出所有可能方案的個數(包含題目給出的)。
package myjava;
/**
* @author wang:
* @version 創建時間:2016年8月23日 上午8:16:22
* 類說明
* 李白打酒
話說大詩人李白,一生好飲。幸好他從不開車。
一天,他提着酒壺,從家裏出來,酒壺中有酒2鬥。他邊走邊唱:
無事街上走,提壺去打酒。
逢店加一倍,遇花喝一斗。
這一路上,他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。
請你計算李白遇到店和花的次序,可以把遇店記爲a,遇花記爲b。則:babaabbabbabbbb
就是合理的次序。像這樣的答案一共有多少呢?請你計算出所有可能方案的個數(包含題目給出的)。
*
*/
public class Libai {
public static int jishu;
public static void main(String[] args) {
drink(2,5,10);
System.out.println(jishu);
}
public static void drink(int dou,int a,int b){
if(dou<1||a<0||b<1){
return;
}
if(dou == 1&&a==0&&b==1){
jishu++;
}
if(dou>0){
if(a>0){
drink(dou*2,a-1,b);
}
if(b>0){
drink(dou-1,a,b-1);
}
}
}
}