C++判断五张牌是否为顺子(大小王可变牌)
C++判断五张牌是否为顺子(大小王可变牌)
本文提供了一段C++代码,用于判断给定的五张牌是否构成顺子,其中大小王可以被视为任意牌。
**代码:**cpp#include
bool isStraight(vector
int main() { vector
代码解释:
-
isStraight函数: - 首先对输入的牌进行排序。 - 使用zeroCount记录大小王的数量(用0表示)。 - 使用gapCount记录牌之间的空缺数量。 - 遍历排序后的牌,统计zeroCount和gapCount。 - 如果zeroCount大于等于gapCount,则说明大小王可以填补所有空缺,构成顺子,返回true;否则返回false。 -
main函数: - 读取用户输入的五张牌。 - 调用isStraight函数判断是否为顺子。 - 输出判断结果。
例子:
输入: 0 1 3 4 0
输出: true
总结:
这段代码简洁高效地解决了判断五张牌是否为顺子的问题,并考虑了大小王可以替代任意牌的情况,逻辑清晰易懂。
原文地址: https://www.cveoy.top/t/topic/SOG 著作权归作者所有。请勿转载和采集!