几道数字算法问题1

来源:互联网 发布:java面试宝典 pdf 编辑:程序博客网 时间:2024/05/18 01:27

1、假如说有一串数字,11位,判断里面是否存在ABBA这样的数字?

bool IsAABB(int* num, int len){    bool b = false;    int j = 0;    for (int i = 0; i < len; i++)    {        if (num[i] == num[i+1])        {            if (++j > 1)            {                b = true;                break;            }            if (++j > 0)            {                i += 2;            }        }    }    return b;}bool IsABAB(int* num, int len){    bool b = false;    int j = 0;    for (int i = 0; i < len; i++)    {        if (num[i] == num[i+2])        {            if (++j > 1)            {                b = true;                break;            }        }    }    return b;}//连续bool IsContinuous(int* pCards, int nLen){    if (pCards == NULL || nLen <= 0)        return false;    int i = 0;    int j = 0;    int preCard = pCards[i];    for (i = 1; i < nLen; i++)    {        int curCard = pCards[i];        if (preCard == curCard)   //与前一张卡号比较        {            if (++j > 1)            {                return true;            }        }        preCard = curCard;    }    return false;}//递增bool IsUpSeries(int* num, int len){    bool b = false;    int j = 0;    for (int i = 0; i < len; i++)    {        if (num[i] == num[i+1] - 1)        {            if (++j > 1)            {                b = true;                break;            }        }    }    return b;}//递减bool IsDownSeries(int* num, int len){    bool b = false;    int j = 0;    for (int i = 0; i < len; i++)    {        if (num[i] == num[i+1] + 1)        {            if (++j > 1)            {                b = true;                break;            }        }    }    return b;}bool IsABBA(int* num, int len){    bool b = false;    int j = 0;    for (int i = 0; i < len; i++)    {        if (num[i] == num[i+3])        {            if (num[i+1] == num[i+2])            {                b = true;                break;            }        }    }    return b;}int main(){      int  sNum[11] = {13968862123};          bool isGood = IsABBA(sNum, iLen);     if (isGood)      {                 printf("yes");       }       else      {                 printf("no");      }}


 


 

 

 

0 0
原创粉丝点击