当前位置:网站首页>【剑指 Offer】61. 扑克牌中的顺子
【剑指 Offer】61. 扑克牌中的顺子
2022-07-05 16:22:00 【LuZhouShiLi】
剑指 Offer 61. 扑克牌中的顺子
题目
从若干副扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。
思路
三件事
- 首先将数组进行排序
- 统计数组中0的个数
- 最后统计排序之后的数组中相邻数字之间空缺的总数
- 判断0的个数是否大于或者等于空缺总数
代码
class Solution {
public:
bool isStraight(vector<int>& nums) {
sort(nums.begin(),nums.end());// 排序
int king = 0;
int gap = 0;
for(int i = 0; i < nums.size(); ++i)
{
if(nums[i] == 0)
{
++king;// 统计0的个数
}
if(i > 0 && nums[i] != 0 && nums[i] == nums[i - 1])
{
return false;// 遇到相同的数字
}
if(i > 0 && nums[i - 1] != 0 && nums[i] > nums[i - 1] + 1)
{
gap += nums[i] - nums[i - 1] - 1;// 计算空缺 记得减一
}
}
return king >= gap;//判断0的个数是否大于空缺个数
}
};
边栏推荐
猜你喜欢
【学术相关】多位博士毕业去了三四流高校,目前惨不忍睹……
Jarvis OJ shell流量分析
用键盘输入一条命令
If you can't afford a real cat, you can use code to suck cats -unity particles to draw cats
[729. My schedule I]
Learnopongl notes (II) - Lighting
Solution of vant tabbar blocking content
Flet教程之 12 Stack 重叠组建图文混合 基础入门(教程含源码)
普洛斯数据中心发布DC Brain系统,科技赋能智慧化运营管理
Win11提示无法安全下载软件怎么办?Win11无法安全下载软件
随机推荐
深潜Kotlin协程(二十一):Flow 生命周期函数
C# TCP如何限制单个客户端的访问流量
composer安装报错:No composer.lock file present.
Jarvis OJ shell traffic analysis
【729. 我的日程安排表 I】
Migrate /home partition
Desci: is decentralized science the new trend of Web3.0?
Jarvis OJ Flag
Some cognitive thinking
【组队 PK 赛】本周任务已开启 | 答题挑战,夯实商品详情知识
Jarvis OJ Telnet Protocol
一些認知的思考
yarn 常用命令
文件操作--I/O
Seaborn draws 11 histograms
China Radio and television officially launched 5g services, and China Mobile quickly launched free services to retain users
Jarvis OJ 简单网管协议
Sentinel-流量防卫兵
HiEngine:可媲美本地的云原生内存数据库引擎
PSPNet | 语义分割及场景分析