一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。
这时,小明脑子里突然冒出一个问题:
如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序
自己手里能拿到的初始牌型组合一共有多少种呢?
输出
请输出该整数,不要输出任何多余的内容或说明文字。
13种牌,每种都有可能取0~4 张,枚举求和即可
#include<stdio.h> int main(){ int sum = 0; for(int a = 0;a < 5;a++) for(int b = 0;b < 5;b++) for(int c = 0;c < 5;c++) for(int d = 0;d < 5;d++) for(int e = 0;e < 5;e++) for(int f = 0;f < 5;f++) for(int g = 0;g < 5;g++) //7 for(int aa = 0;aa < 5;aa++) for(int bb = 0;bb < 5;bb++) for(int cc = 0;cc < 5;cc++) for(int dd = 0;dd < 5;dd++) for(int ee = 0;ee < 5;ee++) for(int ff = 0;ff < 5;ff++) // 13种牌,每种都有可能取0~4 张,枚举求和即可 if(a+b+c+d+e+f+g+aa+bb+cc+dd+ee+ff == 13) sum++; printf("%d\n",sum); return 0; }
另外,网上有dfs 做法,以及排列组合求解的,暂时不明白咋做,,挖个坑吧