剑指OFFER 扑克牌顺子
Posted virgildevil
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指OFFER 扑克牌顺子相关的知识,希望对你有一定的参考价值。
剑指OFFER 扑克牌顺子
分析
把数与数之间的缝隙用0去填,如果0够用那么就是顺子;如果0用完了仍然填不完缝隙,那么就组不成顺子
代码
class Solution {
public:
bool IsContinuous( vector<int> nums ) {
int size = nums.size();
if(size == 0)return false;
sort(nums.begin(),nums.end());
int zero_count = 0;
while(nums[zero_count]==0)
{
zero_count++;
}
for(int i=zero_count;i<size-1;i++)
{
if(nums[i]+1!=nums[i+1])
{
while(zero_count>0 && nums[i]+1!=nums[i+1])
{
zero_count--;
nums[i]++;
}
if(zero_count==0 && nums[i]+1!=nums[i+1])return false;
}
}
return true;
}
};
以上是关于剑指OFFER 扑克牌顺子的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode(剑指 Offer)- 61. 扑克牌中的顺子