【藍橋杯】第五屆-2-李白打酒

題目

話說大詩人李白,一生好飲。幸好他從不開車。

一天,他提著酒壺,從家里出來,酒壺中有酒2斗。他邊走邊唱:

無事街上走,提壺去打酒。
逢店加一倍,遇花喝一斗。

這一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。

請你計算李白遇到店和花的次序,可以把遇店記為a,遇花記為b。則:babaabbabbabbbb 就是合理的次序。像這樣的答案一共有多少呢?請你計算出所有可能方案的個數(shù)(包含題目給出的)。

注意:通過瀏覽器提交答案。答案是個整數(shù)。不要書寫任何多余的內(nèi)容。

答案

14

分析

經(jīng)過分析,可知利用遞歸法把所有的可能情況遍歷一般,由于最后一次遇到的是花,所以最終肯定hua==0&&dian==0&&jiu==1,代碼如下,這里并沒有把所有具體排列情況列出。
注意:huan從14開始

代碼

public class Two {
    public static int counter = 0;
    public static void main(String[] args){
        long startTime = System.currentTimeMillis();
        drinkJiu(14, 9, 5, 2);
        System.out.println(counter);
        long endTime = System.currentTimeMillis();
        System.out.println("time="+(endTime-startTime));
    }
    
    public static void drinkJiu(int step, int hua, int dian, int jiu){
        if(step<0 || dian<0||hua<0||jiu<1) return;
        if(hua==0 && dian==0 && jiu==1){
            counter++;
            return;
        }
        drinkJiu(step-1, hua-1, dian, jiu-1); // 遇到花
        drinkJiu(step-1, hua, dian-1, jiu*2); // 遇到店
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 話說大詩人李白,一生好飲。幸好他從不開車。一天,他提著酒壺,從家里出來,酒壺中有酒2斗。他邊走邊唱:無事街上走,提...
    Super_鄧帥閱讀 1,060評論 0 0
  • 三羊獻瑞 牌型種數(shù) 小明被劫持到X賭城,被迫與其他3人玩牌。一副撲克牌(去掉大小王牌,共52張),均勻發(fā)給4個人,...
    icecrea閱讀 3,593評論 0 2
  • 看完《月亮與六便士》很久了,我總是后知后覺,不知不覺……反復(fù)看的才是經(jīng)典,品后回味的方為余香,大概也是這個意味。 ...
    望舟閱讀 651評論 9 18
  • 沒有不喜歡“鍍金”的, 盡管只是表面, 盡管有些短暫。 因此, 給自己臉上貼金, 是正常的表演, 是上升的支點。 ...
    hsl_7cbf閱讀 201評論 0 2
  • 來到加拿大的Musk,盡管出師不利,但是隨后的大學生活讓他如魚得水(文中用了he fed on this envi...
    慢慢樹閱讀 649評論 0 0

友情鏈接更多精彩內(nèi)容