public class TestOne {
/*
* 方法:逐一考虑每一种牌出现的次数
*
* */
static int ans=0;
public static void main(String[] args) {
f(0,0);//从第一种牌开始遍历 f(当前牌型,已获取的牌数)
System.out.println(ans);
}
/*
* k:当前的牌型
* count:已获取的牌数
* */
private static void f(int k, int count) {
//1.牌型大于13,或者 以获取的牌数大于13
if(k>13 || count>13) return;
//2.当前牌型为第13种,并且已获取了13张牌
if(k==13 && count==13) {
ans++; //可能的牌型组合+1
return;
}
//3.对可能选取当前牌型的数目进行遍历
for(int i=0;i<5;i++) {
f(k+1,count+i);//选取了i张 第k种牌型。接着递归调用第k+1种牌型
}
}
}
答案:
版权声明:本文为sunnnnh原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。