zoukankan      html  css  js  c++  java
  • 打牌

    牌只有1到9,手里拿着已经排好序的牌a,对方出牌b,用程序判断手中牌是否能够压过对方出牌 
    规则:出牌牌型有5种  
    [1]一张 如4 则5...9可压过
    [2]两张 如44 则55,66,77,...,99可压过
    [3]三张 如444 规则如[2]
    [4]四张 如4444 规则如[2]
    [5]五张 牌型只有12345 23456 34567 45678 56789五个,后面的比前面的均大
     
    压过输出YES 否则NO
     
    如(括号内容为注释)
    输入:
    12233445566677(手中牌)
    33(出牌)
     
    输出:
    YES

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    
    int main(){
        int i,len,lenb,flag;
        char card[1000],b[1000];
        int count[10];
        
        while(scanf("%s %s",card,b) != EOF){
            if(strlen(b) > 5){
                scanf("出牌情况只有5种,请重新输入:%s",b);
            }
            
            flag = 0;
            memset(count, 0, sizeof(count));//复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符,这里是初始化count全为0 
            len = strlen(card);
            lenb = strlen(b);
            
            //统计牌各点的数量
            for(i = 0; i < len; i++){
                count[card[i]-'0']++;
            } 
             
            //前4种牌
            if(lenb<5){
                for(i = b[0]-'0'+1; i < 10; i++){
                    if(count[i] >= lenb){
                        flag = 1;
                        break;
                    }
                }
            }
            
            //第五种牌
            else if(lenb == 5){
                for(i = b[0] - '0' +1; i < 6; i++){
                    if(count[i] > 0 && count[i+1] > 0 && count[i+2] >0 && count[i+3] >0 && count[i+4] >0){
                        flag = 1;
                        break;
                    }
                }
            }
            
            if(flag == 0){
                printf("NO
    ");
            }
            else{
                printf("YES
    ");
            }
          
        }
        return 0; 
    }
  • 相关阅读:
    ACwing 199 约数之和
    Acwing 222 青蛙的约会
    Acwing 220 最大公约数
    Acwing 200 Hankson的趣味题
    牛客 同余方程
    Acwing 198 反素数
    2020牛客多校 第六场B
    牛客 计数器
    Java基础-快捷键以及DOS命令
    A1111 Online Map (30分)(最短路径、Dijkstra+DFS)
  • 原文地址:https://www.cnblogs.com/xym4869/p/8657655.html
Copyright © 2011-2022 走看看