题解 | #打牌#

打牌

https://www.nowcoder.com/practice/82442ee76977479e8ab4b88dfadfca9f

#include <iostream>
using namespace std;
int num[12];
string a, b;
bool check(){
    int n = b.size();
    int p = b[0] - '0';
    if(n < 5){
        for(int i = 9; i > p; i --){
            if(num[i] >= n) return true;
        }
        return false;
    }else{
        int cnt = 0;
        for(int i = 9; i > p; i --){
            if(num[i]) cnt ++;
            else cnt = 0;
            if(cnt == 5) return true;    
        }
        return false;
    }
}

int main(){
    cin>>a>>b;
    for(int i = 0; i < a.size(); i ++) num[a[i] - '0'] ++;
    if(check()) cout<<"YES"<<endl;
    else cout<<"NO"<<endl;
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务