B. Game with Telephone Numbers Educational Codeforces Round 63 (Rated for Div. 2)

题意:

给定字符串,两人游戏轮流删除一个字符,谁先让字符串长度为11且第一个是8即获胜。问先手是否必胜。

思路:0到n-10之间的8的数量大于可移除的数量/2即YES否则NO

参考代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<cmath>
#define lson l,mid,root<<1
#define rson mid+1,r,root<<1|1
#define ll long long
const int inf = 0x3f3f3f3f;
const int N=1000000+1;
using namespace std;
int main()
{
    int n;
    cin>>n;
    string a;
    cin>>a;
    int num=n-10;
    int id=0;
    for(int i=0;i<num;i++)
    {
        if(a[i]=='8')
            id++;
    }
    if(id>num/2)
        printf("YES\n");
    else
        printf("NO\n");
    return 0;
}

 

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务