第11期《codeforces 1167A - Telephone Number 题解 》

12 篇文章 1 订阅
8 篇文章 0 订阅
该博客介绍了如何通过一系列删除操作,将一个数字字符串转化为有效的11位电话号码。作者提供了输入输出示例及解决思路,即检查字符串前部是否包含数字8,以判断能否通过删除非8字符形成电话号码。代码实现参考了Codeforces上的相关问题。
摘要由CSDN通过智能技术生成

题目描述如下:

A. Telephone Number

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard 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 ss of length nn, consisting of digits.

In one operation you can delete any character from string ss. 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 ss becomes a telephone number.

Input

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

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

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

Output

For each test print one line.

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

Otherwise, print NO.

Example

input

2
13
7818005553535
11
31415926535

output

YES
NO

Note

In the first test case you need to delete the first and the third digits. Then the string 7818005553535 becomes 88005553535.

思路:检索前面0 ~(n −11)个字符中是否有 8 即可。

ac代码:

#include<bits/stdc++.h>
using namespace std;
#define intc(n); int n;cin>>n;
#define int_ass(n,m); int n=m;
#define str_ass(s,t); string s=t;
#define strc(s); string s;cin>>s; 
#define qfor(i,n) for(int i=0;i<n;i++)
#define qw(tc) while(tc--)
#define pb push_back
#define popb push_back
int main(){
    intc(tc);
    qw(tc){
        intc(n);
        strc(s);
        int_ass(t,0);
        while(t<n&&s[t]!='8'){
            t++;
        }
        if(n-t>=11){
            cout<<"YES"<<endl;
        }
        else{
            cout<<"NO"<<endl;    
        }
    }
    return 0;
}


来源:

Problem - 3C - CodeforcesCodeforces. Programming competitions and contests, programming communityhttps://codeforces.com/problemset/problem/3/C

我们下回再见,欢迎大家关注我!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值