问题描述
- 求大神指教,java!!!!!!!!
-
一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。
这时,小明脑子里突然冒出一个问题:
如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序,自己手里能拿到的初始牌型组合一共有多少种呢?
解决方案
先求出全部由最小点数组成,则为1+1+1+1+2+2+2+2+3+3+3+3+4=28
再求出全部由最大点数组成,则为13+13+13+13+12+12+12+12+11+11+11+11+10=52+48+44+10=154
最大点数减去最小点数则为种数=154-28=126种
解决方案二:
实际就是有A到K13种牌,每种从0到4有5种拿牌的数量。
所以想象你手上的是一个13位的5进制数,每一位代表一种点数牌的数量,如果这个数的的各个位的数相加为13,则这是一种合法的组合。
解决方案三:
其实我觉得你问的是关于数据结构的问题,和java关系不大吧
时间: 2024-10-01 10:09:04