扑克牌顺子

五张牌,其中大小鬼代表任意数字,牌面大小为 0。判断这五张牌是否能组成顺子。

 

C++:

 1 class Solution {
 2 public:
 3     bool IsContinuous( vector<int> numbers ) {
 4         if (numbers.size() < 5)
 5             return false ;
 6         sort(numbers.begin() , numbers.end()) ;
 7         int cnt = 0 ;
 8         for(int num : numbers){
 9             if (num == 0){
10                 cnt++ ;
11             }
12         }
13         
14         for(int i = cnt ; i < numbers.size() - 1 ; i++){
15             if (numbers[i] == numbers[i+1]){
16                 return false ;
17             }
18             int t = numbers[i+1] - numbers[i] - 1 ;
19             cnt -= t ;
20         }
21         
22         return cnt >= 0 ;
23     }
24 };

 

posted @ 2019-03-27 15:52  __Meng  阅读(497)  评论(0编辑  收藏  举报