• 1049: 打牌


    1049: 打牌

    时间限制: 1 Sec  内存限制: 128 MB
    提交: 250  解决: 89
    [提交][状态][讨论版]

    题目描述

    牌只有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五个,后面的比前面的均大。

    输入

    输入有多行,第一行代表手中的牌,长度不超过200个数字。接下来的每一行代表每次对方出的牌。

    输出

    输出有多行,代表手中的牌是否能压过对方出的牌,压过输出YES, 并列出所有可选项,可选项之间用空格分隔。 否则输出NO。

    样例输入

    17624234556367
    33
    222
    34567

    样例输出

    YES 44 55 66 77
    YES 666
    NO

    提示

     

    来源

     #include <iostream>
    using namespace std;
    int main(){
        string mystr,str;
        int i,j,len,f,min;
        int a[10]={0};
        cin>>mystr;
        for(i=0;mystr[i]!='';i++){
            a[mystr[i]-'0']++;
        }
        while(cin>>str){
            f=0;
            len=str.length();
            min=str[0]-'0'+1;
            if(len==5){
                for(j=min;j<=5;j++){
                    if(a[j]>=1&&a[j+1]>=1&&a[j+2]>=1&&a[j+3]>=1&&a[j+4]>=1){
                        if(f==0){
                        cout<<"YES ";
                        f=1;
                        }else{
                            cout<<" ";   
                        }
                    cout<<j<<j+1<<j+2<<j+3<<j+4;
                    }
                }
                 
            }else{
                for(i=min;i<10;i++){
                if(a[i]>=len){
                    if(f==0){
                        cout<<"YES ";
                        f=1;
                    }else{
                        cout<<" ";   
                    }
                    for(j=0;j<len;j++){
                            cout<<i;
                        }
                   }
               }
            }
            if(f==1) cout<<endl;
            else if(f==0) cout<<"NO"<<endl;
             
        }
        return 0;
    }
  • 相关阅读:
    jeecg中移动tbody中的tr可实现位置交换
    SQL Server中的Datediff移植到Oracle计算有误解决方案
    Oracle如何插入日期数据
    在 Oracle 9i 中创建 方案
    手把手教你uniapp 打包的H5怎么实现谷歌登录
    网站和项目的区别
    基础知识
    全球唯一标识GUID
    MVC3 Razor视图引擎基础语法
    缓存技术
  • 原文地址:https://www.cnblogs.com/lchzls/p/5781758.html
Copyright © 2020-2023  润新知