题目描述
从扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这 5 张牌是不是连续的。2∼10 为数字本身,A 为 1,J 为 11,Q 为 12,K 为 13,大小王可以看做任意数字。为了方便,大小王均以 0 来表示,并且假设这副牌中大小王均有两张。
样例1
输入:[8,9,10,11,12]
输出:true
样例2
输入:[0,8,9,11,12]
输出:true
class Solution {
public:
bool isContinuous( vector<int> numbers ) {
if(numbers.empty()) return false;
sort(numbers.begin(),numbers.end());
int k=0;
while(!numbers[k]) k++;
for(int i=k+1;i<numbers.size();i++)
{
if(numbers[i]==numbers[i-1]) return false;
}
return numbers.back()-numbers[k]<=4;
}
};