zoukankan      html  css  js  c++  java
  • 剑指offer——扑克牌的顺子

    思想:

    1、先将输入的几个数进行排序,sort函数是#include<algorithm>下的。

    2、统计0的个数,以及相邻数的差值,比较0的个数及差值的和。看是否可以用大王填充中间的差值。

     1 #include <iostream>
     2 #include <algorithm>
     3 #include <stdlib.h>
     4 #include <string>
     5 using namespace std;
     6 
     7 
     8 bool IsContinuous(int *numbers,int length)
     9 {
    10     if(numbers==NULL || length<1)
    11         return false;
    12 
    13     sort(numbers,numbers+length);
    14 
    15     int NumOfZero = 0;        //0的个数
    16     int NumOfGap = 0;  //空缺的个数
    17     int i;
    18     for(i=0;i<length-1;i++)
    19     {
    20         if(numbers[i] == 0)
    21             NumOfZero++;
    22         else
    23         {
    24             if(numbers[i] == numbers[i+1])
    25                 return false;
    26             else
    27                 NumOfGap += numbers[i+1]-numbers[i]-1;
    28         }
    29     }
    30     return (NumOfGap>NumOfZero)?false:true;
    31 }
    32 
    33 int main()
    34 {
    35     int n;
    36     int arr[15];
    37     memset(arr,0,sizeof(arr));
    38     while(scanf("%d",&n)!=EOF && n!=0)
    39     {
    40         int i;
    41         for(i=0;i<n;i++)
    42             scanf("%d",arr+i);
    43         
    44         bool can = IsContinuous(arr,n);
    45         if(can)
    46             printf("So Lucky!
    ");
    47         else
    48             printf("Oh My God!
    ");
    49     }
    50     return 0;
    51 }



  • 相关阅读:
    std::function与std::bind 函数指针
    cocos2dx 3.0 +VS2013 环境搭建
    matrix(dp)
    sequence1(暴力)
    uva
    hpu第五届acm比赛
    找球号(一)(hask表)
    Elven Postman(二叉树)
    链表的基本操作
    Sightseeing Cows(最优比率环)
  • 原文地址:https://www.cnblogs.com/dgy5554/p/3973386.html
Copyright © 2011-2022 走看看