https://codeforces.com/contest/1303/problem/E

 #include<bits/stdc++.h>
using namespace std;
const int maxn = ;
int dp[maxn][maxn];
bool check(string s,string t){
int indx = ;
for(int i = ;i<s.length();i++){
if(t[indx] == s[i]) indx++;
}
if(indx == t.length()) return true;
return false;
}
bool check(string s,string t1,string t2){
memset(dp,-,sizeof(dp));
dp[][] = ;
for(int i = ;i<s.length();i++){
for(int j = ;j<=t1.size();j++){
if(dp[i][j]<) continue;
if(j<t1.size() && s[i] == t1[j]){
dp[i+][j+] = max(dp[i+][j+],dp[i][j]);
}
if(dp[i][j]<t2.size() && s[i] == t2[dp[i][j]]){
dp[i+][j] = max(dp[i+][j],dp[i][j]+);
}
dp[i+][j] = max(dp[i+][j],dp[i][j]);
}
}
if(dp[s.length()][t1.length()] == t2.length()) return true;
return false;
}
void solve(){
string s,t;
cin>>s>>t;
if(check(s,t)){
cout<<"YES"<<endl;
return;
}
for(int i = ;i<t.length()-;i++){
string t1 = t.substr(,i+);
string t2 = t.substr(i+,t.size());
if(check(s,t1,t2)){
cout<<"YES"<<endl;
return;
}
}
cout<<"NO"<<endl;
return;
}
int main(){
int t;
cin>>t;
while(t--){
solve();
}
return ;
}

最新文章

  1. GO语言总结(3)——数组和切片
  2. getAttribute、setAttribute、removeAttribute
  3. 1、Hadoop的伪分布式部署
  4. 用函数生成select选择框
  5. 在SQL中修改数据库名称
  6. 响应式布局—设备像素密度测试 (-webkit-min-device-pixel-ratio)
  7. JNI 方法注册与签名+BufferedReader使用readLine问题
  8. CAS单点登录入门
  9. mysql建表时
  10. android 知识汇总
  11. vue移动端金融UI组件库滴滴MandMobile面向金融场景设计附功能思维导图
  12. windows下telnet不是内部或外部命令
  13. agc023C - Painting Machines(组合数)
  14. 05_ssm基础(六)之SpringMVC
  15. 单点登录--CAS认证--web.xml配置详解
  16. (转载)220v交流接触器自锁接线图另接热继电器
  17. Python -- 图片处理
  18. Flutter Stack布局中定位的方式
  19. 使用JSONP彻底解决Ajax跨域访问Cookie Session的方案
  20. Docker - 容器中的tomcat如何使用startup.sh启动

热门文章

  1. NPOI word文档表格在新的文档中多次使用
  2. ELF文件之八——使用链接脚本-2个函数-data-bss-temp-call-debug信息
  3. 调用winpcap发送路由器公告
  4. OSPFv3与OSPFv2协议的比较
  5. SSM/SSH框架的MySQL 读写分离实现的一种简单方法
  6. Android 7.0新特性“Nougat”(牛轧糖)。
  7. 大数四则运算之加法运算--------C语言版(未考虑负数)
  8. Vue子组件和根组件的关系
  9. 智和网管平台SugarNMS赋能AI智能化运维
  10. Java集合效率问题