☰
华为OD机试真题精讲:最长的顺子(Python/Java/C++多语言实现)
2026/10/2 4:59:34 网站建设 项目流程

华为OD机试真题精讲:最长的顺子(Python/Java/C++多语言实现)

一、题目描述(2025B卷高频100分题)

在扑克牌游戏中,顺子是指一组连续递增的数字牌,相邻两张牌的数字差值为1。其中数字0为癞子(万能牌),可以替代任意一个非0数字来组成顺子。

给定一个仅包含非负整数的数组(每个元素代表一张牌的数字,0≤数字≤13,对应扑克牌的A-K和癞子0),请计算通过合理使用癞子后,能组成的最长顺子的长度。若无法组成长度≥5的顺子(扑克牌顺子的基本规则),返回0。

关键约束

  • 数组长度1 ≤ len(nums) ≤ 10^5;
  • 数组元素取值范围:0 ≤ nums[i] ≤ 13;
  • 癞子(0)可以替代任意非0数字,每个癞子仅能使用一次;
  • 重复的非0数字无法参与同一顺子(例如:[1,1,2,3,4] 无法组成长度为5的顺子,两个1只能选其一参与);
  • 时间限制1秒,空间限制256MB。

示例说明

输入输出说明
[0,0,1,2,3,4,5]7两个0

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询