通过率 37% · 提交 578 · 通过 214
小慕正在开发一款扑克牌游戏,他需要编写一个判断牌型的模块。每张牌由牌面大小和花色组成,牌面大小为2~10、J、Q、K、A,花色为红桃、黑桃、梅花、方块四种之一。现在给定五张牌,需要判断其属于哪种牌型: 牌型1,顺:同一花色的,例如红桃2、红桃3、红桃4、红桃5、红桃6。 牌型2,四条:四张相同牌面大小加一张单牌,例如红桃A、黑桃A、梅花A、方块A加黑桃K。 牌型3,葫芦:三张相同牌面大小加一对,例如红桃5、黑桃5、梅花5加方块9、梅花9。 牌型4,同花:五张牌花色相同,例如方块3、方块7、方块10、方块J、方块Q。 牌型5,顺子:花色不完全相同的顺子,例如红桃2、黑桃3、红桃4、红桃5、方块6。 牌型6,三条:三张相同牌面大小加两张单牌。 说明: (1)五张牌中不会出现牌面大小和花色完全相同的牌。 (2)编号越小的牌型越大,如同花顺大于四条,以此类推。 (3)包含A的合法顺子只有10、J、Q、K、A和A、2、3、4、5;类似K、A、2、3、4的序列不视为顺子。
这类题属于华为 OD 机考真题方向中「100分 / 2024E」方向的高频题型,通常考察对「100分 / 2024E」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
输入由5行组成,每行为一张牌大小和花色,牌大小为2~10、J、Q、K、A,花色分别用字符H、S、C、D表示红桃、黑桃、梅花、方块。
输出牌型序号,5张牌符合多种牌型时,取最大的牌型序号输出。
示例 1
输入示例
4 H 5 S 6 C 7 D 8 D
输出示例
5
4 5 6 7 8构成顺子,输出5
示例 2
输入示例
9 S 5 S 6 S 7 S 8 S
输出示例
1
既是顺子又是同花,输出1,同花顺
时间限制 1000 ms · 内存限制 128 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有