天天看點

藍橋杯-牌型種數-典型的遞歸

牌型種數

小明被劫持到X賭城,被迫與其他3人玩牌。

一副撲克牌(去掉大小王牌,共52張),均勻發給4個人,每個人13張。

這時,小明腦子裡突然冒出一個問題:

如果不考慮花色,隻考慮點數,也不考慮自己得到的牌的先後順序,自己手裡能拿到的初始牌型組合一共有多少種呢?

請填寫該整數,不要填寫任何多餘的内容或說明文字。

典型的遞歸,十三張牌,我不管,反正A到K這十三個系列給我牌,每個系列可能給我0到4張,然後踢出去交給下一個系列。一直踢皮球,到了完了最後的系列K,計個數。return回去。結果:3598180。

package lastReal;
public class cart {
    static int a[]={,,,,,,,,,,,,};
    static int cnt=;
    public static void main(String[] args) {
        f(a,,);
        System.out.println(cnt);
    }
    static  void f(int[] a,int k,int n){
        if(k==){
            if(n==){
                cnt++;
            }
            return;
        }
        for(int i=;i<=;i++){
            f(a,k+,n-i);
        }
    }
}