删除字符2

题目描述

给定一个奇数长度的、只由小写字母构成的字符串𝑠。

只要字符串的长度大于1,我们就能删除字符串中两个相邻的字符。比如字符串lemma,可以通过一次删除操作变成mma、lma、lea或者lem

可以发现,一次删除操作会使得字符串的长度减2。

给定一个字符变量𝑐,请问,通过删除操作使得字符串长度变成1之后,最后剩的这一个字符是否有可能和字符变量𝑐相同的?

输入描述

第一行一个正整数𝑇,表示有𝑇组输入。

对于每组输入,第一行一个字符串𝑠,𝑠的长度是奇数,并且长度最小是1,最大是49。

第二行一个字符变量𝑐的值,只会是26个小写字母之一。

输出描述

对于每组输入每组输入,输出一行一个字符串,如果最后剩的字符和字符变量𝑐相同,输出YES,否则输出NO

样例输入

5
abcde
c
abcde
b
x
y
aaaaaaaaaaaaaaa
a
contest
t

样例输出

YES
NO
NO
YES
YES

AC代码

#include<bits/stdc++.h>
using namespace std;
int t;
string s,c;
int main(){
    int t;
    cin>>t;
    while(t--){
        cin>>s>>c;
        int len=s.size(),f=0;
        for(int i=0;i<=len;i++){
        	if(s[i]==c[0]&&i%2==0){
        		cout<<"YES"<<"\n";
        		f=1;
        		break;
			} 
		}
        if(!f) cout<<"NO"<<"\n";
    }
	return 0;
} 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值