关闭

出牌,用程序判断手中的牌是否能够压过对方出牌

376人阅读 评论(0) 收藏 举报
分类:


//规则:出牌牌型有5种  
//牌只有1到9,手里拿着已经排好序的牌a,对方出牌b,用程序判断手中牌是否能够压过对方出牌。
//[1]一张 如4 则5...9可压过
//[2]两张 如44 则55,66,77,...,99可压过
//[3]三张 如444 规则如[2]
//[4]四张 如4444 规则如[2]
//[5]五张 牌型只有12345 23456 34567 45678 56789五个,后面的比前面的均大。
//输入: 输入有多组数据。
//每组输入两个字符串(字符输出: 压过输出YES 否则NO。
//串大小不超过100)a,b。a字符串代表手中牌,b字符串代表处的牌。
//样例输入: 12233445566677
//33
//123344556667799
//888
//样例输出: YES
//NO
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int cmp(char a,char b)
{
 return a<b;
}
void main()
{
 char s1[100];
 char s2[100];
 gets(s1);
 gets(s2);
 int len1=strlen(s1);
 int len=strlen(s2);
 sort(s1,s1+len1,cmp);
 
 int i=0;
 char *a="YES";
 char *b="NO";
 char *c;
 if(len==1)
 {
  while(s1[i]!='\0')
  {
   if(s1[i]>s2[0])
   {
    c=a;
    break;
   }
   else
    i++;
  }
  if(i==len)
   c=b;
 }

 if(len==2)
 {
  while(s1[i]!='\0')
  {
   if(len-i<2)
   {
    c=b;
    break;
   }
   else
   {
    if(s1[i]>s2[0]&&s1[i+1]==s1[i])
    {
     c=a;
        break;
    }
    else
        i+=2;
   }
  }
  if(i==len)
   c=b;
 }
 if(len==3)
 {
  while(s1[i]!='\0')
  {
   if(len-i<3)
   {
    c=b;
    break;
   }
   else
   {

    if(s1[i]>s2[0]&&s1[i+1]==s1[i]&&s1[i+2]==s1[i])
    {
     c=a;
        break;
    }
       else
        i+=4;
   }
  }
  if(i==len)
   c=b;
 }

 if(len==4)
 {
  while(s1[i]!='\0')
  {
   if(len-i<4)
   {
    c=b;
    break;
   }
   else
   {
    if(s1[i]>s2[0]&&len-i>=4&&s1[i+1]==s1[i]&&s1[i+2]==s1[i]&&s1[i+3]==s1[i])
    {
        c=a;
        break;
       }
    else
        i+=4;
   }
    }
  if(i==len)
   c=b;
 }

 if(len==5)
 {
  while(s1[i]!='\0')
  {
   if(len-i<5)
   {
    c=b;
    break;
   }
   else
   {
    if(s1[i]>s2[0]&&len-i>=5&&s1[i+1]-'1'==s1[i]&&s1[i+2]-'1'==s1[i+1]&&s1[i+3]-'1'==s1[i+2]&&s1[i+4]-'1'==s1[i+3])
    {
        c=a;
        break;
    }
       else
        i++;
   }
  }
  if(i==len)
   c=b;
 }
 cout<<c<<endl;

}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:13355次
    • 积分:629
    • 等级:
    • 排名:千里之外
    • 原创:52篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章存档