#include <stdio.h>
int ans=0;
void dfs(int n,int step)
{
if(step>14)return ;
if(n==13)
{
ans++;
return ;
}
for(int i=0;i<=4;i++)
{
if(n+i<=13)
dfs(n+i,step+1);
}
}
int main()
{
dfs(0,1);
printf("%d\n",ans);
return 0;
}
dfs求解,不同号的种类为1-13,每step分配0-4张号数相同(即同号不同色)的牌,step=13时分配结束,在step等于14时判断当前的方案是否满足n==13 即13张牌,若满足,ans++