#include <iostream>
using namespace std;
int counter = 0;//用来计数
void dfs(int a,int b)//a代表牌的点数,b代表已经拿去的牌的总数
{
if (b==13)//如果拿的牌的总数为13,那么计数增加并返回
{
counter++;
return;
}
if (b > 13) return;//如果超过13,直接返回
if (a > 13) return;//如果点数超过13,返回
for (int i=0;i<=4;i++)//对每种点数的四种情况遍历
dfs(a + 1, b + i);
}
void main()
{
dfs(1, 0);
cout << counter;
}
[数据结构 & 算法] 2015蓝桥杯A组C/C++第六题牌型种数
于 2017-10-20 11:00:05 首次发布