题目背景

Aldnoah

——火星上超古代文明留下的能量源,承认初代火星移民雷伊·雷加利亚博士(即后来的薇瑟帝国初代皇帝)为正统继承者,启动因子融入皇族的遗传因子中,只有皇族天生具有Aldnoah的启动能力。可以把Aldnoah看成是有认主能力的特殊矿产。在火星骑士的扬陆城中,安置有Aldnoah的启动装置。

题目描述

两天前,被授予启动能力的斯雷因·特洛耶特伯爵准备对启动装置进行加密,以防有人趁其不备破坏装置。

他将这个任务交给了他的心腹哈库莱特。忠实的哈库莱特认为,只需要输入密码就能解锁的加密装置实在是太不安全了,所以他决定用一个特别的加密装置来对Aldnoah启动装置进行保护。

他精心设计了这样一套加密装置:

该装置会给定解密者两个字符串s,t,其中s只包含小写字母以及*,t只包含小写字母。解密者可以进行任意多次操作,每次选择s中的一个*,将它修改为任意多个(可以是0个)它的前一个字符。询问是否能将s修改为t。

聪明的哈库莱特当然不会只给予解密者一组数据啦,所以解密时会有多组数据出现,并且每组数据只有在规定时间内答对才能够继续解密下一组数据。

今天他制作好了加密装置交给了斯雷因·特洛耶特伯爵,斯雷因准备先进行测试过后再将它安装在启动装置上。他随机制造了几组测试数据输入装置,然后让哈库莱特进行解密。哈库莱特会怎么做呢?

输入输出格式

输入格式:

第一行一个整数T表示数据组数。

每组数据两行,第一行一个字符串s,第二行一个字符串t。

输出格式:

每组数据输出一行,如果能将s修改为t,输出Yes,否则输出No。

输入输出样例

输入样例#1:

2
a*
aaaa
a*
ab

输出样例#1:

Yes
No

说明

对于20%的数据,|s|,|t|<=7。

对于60%的数据,|s|,|t|<=300。

对于100%的数据,T<=100,|s|,|t|<=30000。

分析:这道题能拿多少分在于你枚举什么.如果你枚举每个*赋值多少个字母,那么就有20分,如果你枚举两个串,那么就有60分,如果你枚举一个串,看看另外一个串是否符合要求就是满分.

因为每个*只对同一字母有影响,所以把每一段字母相同的连同*分成一段,如果第二个字符串第i段有x个字母,那么第一个字符串中第i段也应该有x个字母,如果里面有*号那么可以少于x个字母,否则就必须等于x个字母,否则匹配不成功,扫一遍就可以了.

多组数据一定要初始化!本来A掉的结果忘了初始化爆0了QAQ.

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>using namespace std;int T;
char s1[30010], s2[30010];
int len1, len2, cur, num;
bool flag = false;bool pipei(int x, char biaozhun)
{int res = 0;bool can = false;while (s1[cur] != biaozhun && cur <= len1){if (cur > len1)return false;if (s1[cur] == '*')can = 1;elseres++;cur++;}if (res < x && can)return true;if (res < x && !can)return false;if (res == x)return true;if (res > x)return false;
}int main()
{scanf("%d", &T);while (T--){num = 0;flag = 0;memset(s1, 0, sizeof(s1));memset(s2, 0, sizeof(s2));scanf("%s", s1 + 1);scanf("%s", s2 + 1);len1 = strlen(s1 + 1);cur = 1;len2 = strlen(s2 + 1);while (s1[cur] == '*' && cur <= len1)cur++;if (cur > len1){printf("No\n");continue;}if (s1[cur] != s2[1]){printf("No\n");continue;}for (int i = 1; i <= len2; i++){num++;if (s2[i] != s2[i + 1]){if (!pipei(num, s2[i + 1])){flag = 1;break;}num = 0;}}if (flag)printf("No\n");elseprintf("Yes\n");}return 0;
}

转载于:https://www.cnblogs.com/zbtrs/p/7671048.html

noip模拟赛 fateice-string相关推荐

  1. 【noip模拟赛4】Matrix67的派对 暴力dfs

    [noip模拟赛4]Matrix67的派对 描述 Matrix67发现身高接近的人似乎更合得来.Matrix67举办的派对共有N(1<=N<=10)个人参加,Matrix67需要把他们安排 ...

  2. 【HHHOJ】NOIP模拟赛 捌 解题报告

    点此进入比赛 得分: \(30+30+70=130\)(弱爆了) 排名: \(Rank\ 22\) \(Rating\):\(-31\) \(T1\):[HHHOJ260]「NOIP模拟赛 捌」Dig ...

  3. NOI.AC NOIP模拟赛 第六场 游记

    NOI.AC NOIP模拟赛 第六场 游记 queen 题目大意: 在一个\(n\times n(n\le10^5)\)的棋盘上,放有\(m(m\le10^5)\)个皇后,其中每一个皇后都可以向上.下 ...

  4. jyzy noip模拟赛5.22-2

    不知道哪来的题 jyzy noip模拟赛5.22-2 样例输入 1 2 3 4 样例输出 0.200000000000000 数据 |a|,|b|,|c|,|d|<=1e9 很多大佬迅速想到二分 ...

  5. NOIP模拟赛csy2021/10/30

    NOIP模拟赛csy2021/10/30 比赛时间规划 赛后反思与总结 这..总的来说感觉打的很不好,根本没有状态,有一部分原因是今天来晚了,太慌,更多的还是这次题感觉很难o(╥﹏╥)o 比赛时间规划 ...

  6. 【WZOI第二次NOIP模拟赛Day1T2】世界末日 解题报告

    [WZOI第二次NOIP模拟赛Day1T2]世界末日 Problem 2 世界末日 (doomsday.pas/c/cpp) 背景 话说CWQ大牛终于打开了那扇神秘大门,但迎接他的不是什么神秘的东西, ...

  7. NOIP 模拟赛 长寿花 题解

    NOIP 模拟赛 长寿花 题解 要放 \(n\) 层物品,第 \(i\) 层有 \(a_i\) 个位置放物品,物品有 \(m\) 中颜色,有约束条件: 同一层两个相邻物品颜色不能相同. 相邻两层颜色集 ...

  8. 辣鸡(ljh) NOIP模拟赛 模拟 平面几何 数论 化学相关(雾)

    [题目描述] 辣鸡ljhNOI之后就退役了,然后就滚去学文化课了. 然而在上化学课的时候,数学和化学都不好的ljh却被一道简单题难住了,受到了大佬的嘲笑. 题目描述是这样的:在一个二维平面上有一层水分 ...

  9. 【NOIP 模拟赛】平均数 涂色游戏 序列题解

    吐槽(完跪):神tmNOIP模拟赛,看到大题头根本高级数据结构什么的想都没想,结果死的很惨,第三题竟然要可持久化线段树,这NOIP我服了. 平均数: 这道题40分相信大家都能拿到,剩下的60分讲真考验 ...

  10. NOIP模拟赛套路技巧经验总结

    前言 还有2天就NOIP了,之前做了这么多场模拟赛,是时候拿出来总结一下, 算是给自己一针强心剂. 列表 从最近的考试总结起(个人认为的重点,可能有重复,仅供参考): (转化很重要,一定要简化问题过后 ...

最新文章

  1. jQuery API之each、children、index的使用
  2. [转载]正确解决:坑爹的0xc000007b——应用程序无法正常启动
  3. pom.xml设置mysql连接_maven工程配置pom.xml实现mybatis的访问数据库操作
  4. [转载]根据两点的经纬度求方位角和距离,等
  5. model存储 swift_Swift语言IOS8开发战记10.Data Model
  6. 移动端设备标识码/设备唯一标识码/设备唯一性
  7. php 编译原理,编译原理
  8. 谷歌浏览器(Chrome)遇到Flash崩溃的处理办法
  9. linux centos7上安装sql developer
  10. db2如何锁定一张表_办公必备的保护工作表技巧,你会了么?
  11. 基于任务分析的非递归遍历二叉树
  12. HTML5 实现摄像头实时监控
  13. excel柱状图自定x轴y轴_Excel制作双坐标轴图表与把X轴与Y轴改为月份及使坐标轴带方向...
  14. ele-ui表单验证规则中的手机号码和邮箱的验证规则
  15. 华为设备的安全配置console及telnet
  16. 最新官方新浪短网址API接口分享-附代码调用演示
  17. 不撞南墙不回头----深度优先搜索
  18. springboot《计算机网络原理》课程试题库管理系统开发 毕业设计-附源码271129
  19. janus videoroom之媒体录制
  20. 什么是 Benchmarks?

热门文章

  1. 实现类似表格内容动态滚动效果
  2. 这次被问懵了!搞定了这些SQL优化技巧,下次横着走
  3. 2020年五面蚂蚁、三面拼多多、字节跳动最终拿offer入职拼多多
  4. 如何实现一个权限管理系统?(附源码)
  5. 链接静态库的顺序问题
  6. Python 实现猜年龄小游戏
  7. php实现返回界面,PHP实现模仿socket请求返回页面的方法
  8. python列表下表_Python 列表下标操作
  9. linux内核红宝书,Solaris 10红宝书 9.3
  10. 收藏!84页PPT讲解电力变压器参数计算