定义牌值2到14, 14为A,18为小王 20为大王, 随机抽取5张牌 看是否能组成顺子(要求:1.王可以变成任意牌,2.Ak可以连K,也可以连2)
时间: 2024-02-20 14:59:29 浏览: 21
好的,我可以为您解答这个问题。首先,我们需要明确一下题目中的规则:
- 牌值2到14,14为A,18为小王,20为大王。
- 王可以变成任意牌。
- Ak可以连K,也可以连2。
根据以上规则,我们可以得到以下结论:
- 由于王可以变成任意牌,所以我们可以将18和20看作是任意牌。
- 对于Ak连K和Ak连2的情况,我们可以将它们看作是同一种情况,即A可以连着K和2。
那么,现在我们来考虑如何判断随机抽取的5张牌能否组成顺子。
我们可以按照以下步骤进行:
1. 对抽取的5张牌进行排序,从小到大排列。
2. 统计王的数量,并将王的数量从5张牌中剔除。
3. 统计相邻牌之间的差值(不包括王),如果差值为1,则表示这两张牌可以组成顺子,如果差值大于1,则表示这两张牌不能组成顺子。
4. 如果步骤3中的差值之和小于等于王的数量,则表示这5张牌可以组成顺子,否则不能组成顺子。
因此,我们可以写出如下的Python代码来判断随机抽取的5张牌是否能组成顺子:
``` python
def is_continuous(nums):
# 对牌进行排序
nums.sort()
# 统计王的数量并剔除
joker = nums.count(18) + nums.count(20)
nums = [num for num in nums if num < 18]
# 统计相邻牌之间的差值
diff = 0
for i in range(1, len(nums)):
if nums[i] - nums[i-1] == 1:
continue
elif nums[i] - nums[i-1] == 0:
return False
else:
diff += nums[i] - nums[i-1] - 1
# 判断差值之和是否小于等于王的数量
return joker >= diff
```
调用该函数并传入5张牌的牌值列表,即可得到判断结果。例如:
``` python
>>> nums = [2, 4, 5, 6, 14]
>>> is_continuous(nums)
True
```
希望能够帮助您解决问题,如有疑问请随时提出。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)