正题

题目链接:http://noip.ybtoj.com.cn/contest/86/problem/2


题目大意

给两个字符串,第一个中的∗*∗号可以替换为若干个(可以为0个)相同的它的前一个字符。求能否构成第二个字符串。


解题思路

把所有的∗*∗号去掉然后在有的∗*∗号的连续相同字符后面加上一个∗*∗。然后就可以暴力判断了。


codecodecode

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=3e4+10;
int T,n,m;
char s[N],t[N];
int main()
{freopen("strinq.in","r",stdin);freopen("strinq.out","w",stdout);scanf("%d",&T);while(T--){scanf("%s",s+1);n=strlen(s+1);scanf("%s",t+1);m=strlen(t+1);int last=0,cnt=0,tail=0;bool flag=0;for(int i=1;i<=n;i++){if(last&&(s[i]==last||s[i]=='*'))cnt+=(s[i]==last); else if(s[i]=='*')last=s[i-1],cnt=0;else if(last){for(int j=1;j<=cnt;j++)s[++tail]=last;last=0;s[++tail]='*';s[++tail]=s[i];}else s[++tail]=s[i];}if(last){for(int j=1;j<=cnt;j++)s[++tail]=last;s[++tail]='*';}n=tail;tail=1;for(int i=1;i<=n;i++){if(s[i]!='*'&&tail>m){flag=1;break;}else if(s[i]==t[tail])tail++;else if(s[i]=='*'){while(s[i]=='*'&&t[tail]==s[i-1])tail++;}else{flag=1;break;}}if(flag||tail<=m)printf("No\n");else printf("Yes\n");}
}

YbtOJ#20060-[NOIP2020模拟赛B组Day3]字串修改【模拟】相关推荐

  1. 2021.08.09【普及组】模拟赛C组比赛总结

    文章目录 2021.08.09[普及组]模拟赛C组比赛总结 写在前面: T1 :[普及模拟]生产武器 题目大意: 正解: T2 :[普及模拟]城市连接 题目大意: 正解: T3 :[普及模拟]抢救文件 ...

  2. 2021-07-17【普及组】模拟赛C组

    文章目录 2021.07.17[普及组]模拟赛C组 写在前面: T1: 题目大意: 正解: T2: 题目大意: 正解: T3: 题目大意: 正解: T4: 题目大意: 正解: 2021.07.17[普 ...

  3. 第十二届蓝桥杯(2021年)模拟赛 Python组(第一期) 题目+个人解答

    填空题 填空题-1 [问题描述] 如東整数a是整数b的整数倍,则称b是a的约数. 请问,有多少个正整数是2020的约数. [答案提交] 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一 ...

  4. JZOJ(中山纪念中学) 2018.02.02【NOIP普及组】模拟赛D组

    本次题目:2018.02.02[NOIP普及组]模拟赛D组 第一题 题目:第一题 公牛数字 题意: 求题目给出两个数字的乘积 分析: 这题明显只是考察学生的高精可我居然没做对,只要多练习几次,即可AC ...

  5. 2021-07-15 【普及组】模拟赛C组总结

    文章目录 [普及组]模拟赛C组 写在前面: T1: 题目大意: 正解: T2: 题目大意: 正解: T3: 题目大意: 正解: T4: 题目大意: 正解: [普及组]模拟赛C组 写在前面: 今天的考试 ...

  6. 2021-07-16 【普及组】模拟赛C组

    文章目录 2021.07.16[普及组]模拟赛C组 写在前面: T1: 题目大意: 正解: T2: 题目大意: 正解: T3: 题目大意: 正解: T4: 题目大意: 正解: 2021.07.16[普 ...

  7. 2021.07.16【普及组】模拟赛C组

    2021.07.16[普及组]模拟赛C组 文章目录 2021.07.16[普及组]模拟赛C组 前言 花生采摘 题目 解析 代码 FBI树 题目 解析 代码 火星人 题目 解析 代码 麦森数 题目 解析 ...

  8. GMOJ - 2021.07.20【普及组】模拟赛C组 - 排座椅(seat)、传球游戏(ball)、立体图(drawing)、间谍派遣、seek

    文章目录 luogu博客链接 GMOJ - 2021.07.20[普及组]模拟赛C组 - 排座椅(seat).传球游戏(ball).立体图(drawing).间谍派遣.seek T1 排座椅(seat ...

  9. 纪中集训2020.01.13【NOIP普及组】模拟赛C组总结————My First Time Write Summary

    纪中集训2020.01.13[NOIP普及组]模拟赛C组总结 题目编号 标题 0 [NOIP普及组模拟]取值( numbers.pas/cpp) 1 [NOIP普及组模拟]数对(pairs.pas/c ...

最新文章

  1. 基于SSM实现商户管理系统
  2. ab不同时为0c语言程序表达式,2016年暨南大学信息科学技术学院C语言程序设计复试笔试最后押题五套卷...
  3. java 正确使用 Volatile 变量
  4. android view绘制过程
  5. [React Native]高度自增长的TextInput组件
  6. 支付宝集五福活动参与人数超4.5亿 你分到了多少?
  7. Android拖放– DragLinearLayout
  8. 牛人也得看的CSS常识
  9. 域的基本管理:统一公司部门桌面
  10. hive窗口函数最全总结
  11. 计算机408重点知识及其他(面试)
  12. IDM安装及使用方法快速入门
  13. 不能创建对象qmdispatch_按键精灵更新时提示 ActiveX 部件不能创建对象 错误代码 800a01ad_电脑故障...
  14. 太阳能光伏发电系统的组成
  15. 《Revisiting Self-Supervised Monocular Depth Estimation》论文笔记
  16. RedHat6.6安装thefuck工具,自动纠正错误命令
  17. python因子分析案例_因子分析及python实现(一)
  18. android bitmap设置透明度,Android 设置图片 Bitmap任意透明度
  19. 动态代理—IOC框架
  20. 从前后端的角度分析options预检请求——打破前后端联调的理解障碍

热门文章

  1. 未来教育计算机二级Excel解析,Excel操作小技巧,助你学好计算机二级office!
  2. android 只能输入汉字,EditText限制输入的几种方式及只显示中文汉字的做法
  3. python导包路径问题_python的导包问题
  4. c语言输入一个数存数组,//从键盘上输入若干整数,并将其存入数组中,并统计输入数据的个...
  5. 华为机试支持python吗_4.10华为暑期实习生机试题目,python解答
  6. vba cad 获取宏的路径_VBA批量创建文件目录及链接,建议收藏备用
  7. mysql设置表名字为占位符_这可能是把MySQL存储引擎讲解的最清楚的一篇文章了
  8. 数据结构——最小生成树之prime算法(与最短路径之迪杰斯特拉算法很像)
  9. [C++STL]常用排序算法
  10. 《C++ Primer》8.2.1节练习(部分)