原题链接
思路:DFS
这个题是要找有多少种牌是符合要求的,所以符合DFS的使用条件。
public class G初赛2015牌型种数 {
public static int ans = 0;
//参数含义:k又有几张牌没有分配,num:正在分配哪一类牌型
public static void dfs(int k,int num) {
if(k<0||num>14)return;
if(k==0) {
ans++;return;
}else {
for(int i=0;i<5;i++) {//每一种牌的数目为0-4张
dfs(k-i,num+1);
}
}
}
public static void main(String[] args) {
dfs(13,1);
System.out.println(ans);
}
}