【新2023】华为OD机试 - 判断牌型(Python)

这篇博客介绍了华为OD机试中的一道判断牌型问题,涉及五张牌的组合判断,包括不同牌型的定义。内容涵盖了题目描述、输入输出说明、示例、编码思路、核心知识点以及Python代码实现。解题关键在于正确理解牌型规则并进行有效排序和比较。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OD统一机试:判断牌型

题目

五张牌每张牌由牌大小和花色组成
牌大小2~10 J Q K A
花色四种 红桃 黑桃 梅花 方块 四种花色之一

  • 判断牌型
    • 牌型一 同花顺
      同一花色的顺子 如红桃 2 红桃 3 红桃 4 红桃 5 红桃 6
    • 牌型二 四条
      四张相同数字+单张 红桃 A 黑桃 A 梅花 A 方块 A 加黑桃 A
    • 牌型三 葫芦
      三张相同数字加一对
      如 红桃 5 黑桃 5 梅花 5 加方块 9 梅花 9
    • 牌型四 同花
      同一种花色
      如方块 3 方块 7 方块 10 方块 J
    • 牌型五 顺子
      花色不一样的顺子
      如红桃 2 黑桃 3 红桃 4 红桃 5 方块 6
    • 牌型六 三条
      三张相同 + 两张单
    • 牌型七 其他

输入

输入由5行组成
每行为一张牌大小和花色
牌大小为 2~10 J Q K A
花色分别用字符 H S C D表示红桃 黑桃 梅花 方块

输出描述

输出牌型序号
五张牌符合多种牌型时,取最大的牌型序号输出
五张牌中不会出现数字大小和花色完全相同的牌
编号小的牌型较大,包含 A 的合法顺子只有 10 J Q K AA 2 3 4 5
类似 KA234不是合法顺子

示例一

输入

4 H
5 S
6 C
7 D
8 D

输出

5
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想橡皮擦

如有帮助,来瓶可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值