Algorithm Problem:Telephone Number

A. Telephone Number
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
A telephone number is a sequence of exactly 11 digits, where the first digit is 8. For example, the sequence 80011223388 is a telephone number, but the sequences 70011223388 and 80000011223388 are not.

You are given a string s of length n, consisting of digits.

In one operation you can delete any character from string s. For example, it is possible to obtain strings 112, 111 or 121 from string 1121.

You need to determine whether there is such a sequence of operations (possibly empty), after which the string s becomes a telephone number.

Input
The first line contains one integer t (1≤t≤100) — the number of test cases.

The first line of each test case contains one integer n (1≤n≤100) — the length of string s.

The second line of each test case contains the string s (|s|=n) consisting of digits.

Output
For each test print one line.

If there is a sequence of operations, after which s becomes a telephone number, print YES.

Otherwise, print NO.
Example
input
2
13
7818005553535
11
31415926535
output
YES
NO
My Answer Code:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t;
    cin>>t;
    vector<string>s(t);
    vector<int>a(t);
    vector<int>firstindex(t,-1);
    vector<bool>ans(t);
    for(int i=0;i<t;i++)
    {
        cin>>a[i]>>s[i];
        if(a[i]<11){ans[i]=false;continue;}
        for(int j=0;j<a[i];j++)
        {
            if(s[i][j]=='8'){firstindex[i]=j;break;}
        }
        if(a[i]-firstindex[i]>=11&&firstindex[i]!=-1)ans[i]=true;
        else ans[i]=false;
    }
    for(int i=0;i<t;i++){if(ans[i])cout<<"YES"<<'\n';else cout<<"NO"<<'\n';}
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值