题解 | #扑克牌顺子#
扑克牌顺子
https://www.nowcoder.com/practice/762836f4d43d43ca9deb273b3de8e1f4
#include <algorithm>
#include <cstdio>
#include <cstring>
class Solution {
public:
bool IsContinuous( vector<int> numbers ) {
//最大值减最小值小于等于4
int ma=-1,mi=14,flag[15];
memset(flag, 0, sizeof(flag));
for(int i=0;i<5;i++){
ma=max(ma, numbers[i]);
if(numbers[i]==0){continue;}
mi=min(mi, numbers[i]);
if (ma-mi>4) {
return false;
}
if ( flag[numbers[i]]==0) {
flag[numbers[i]]++;
}else {
return false;
}
}
return true;
}
};
不能有重复的,且最大值减最小值不能大于4即可。
