码迷,mamicode.com
首页 > 其他好文 > 详细

剑指OFFER 扑克牌顺子

时间:2020-02-06 14:25:05      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:i++   solution   begin   code   offer   之间   剑指offer   turn   就是   

剑指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 扑克牌顺子

标签:i++   solution   begin   code   offer   之间   剑指offer   turn   就是   

原文地址:https://www.cnblogs.com/virgildevil/p/12268479.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!