思路
首先按照操作一和操作二得到一个没有进行操作三的字符串 s s s,再判断 s s s 是否是题目给定的字符串的子序列即可。
Code
#include<iostream>
using namespace std;
signed main() {ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);int n,cnt=0;cin>>n;string str="<3",s,str2;for(int i=0;i<n;++i) cin>>s,str+=s+"<3";//模拟操作一和操作二cin>>str2;for(int i=0;i<str2.size();++i) if(str2[i]==str[cnt]) ++cnt;//从左至右累加相同部分的长度cout<<(cnt==str.size()?"yes":"no");//如果相同部分的长度与只进行了操作一和操作二的字符串的长度相等就输出yes,反之输出noreturn 0;
}