题意

字符串模式匹配,'.'匹配任何一个字符,'*'表示它的前一个字符可以任意出现(0次或多次),给出字符串和模式串,询问是否匹配

分析

和标准正则表达式不同的是".*"模式串在题意下不能匹配"abcde"这样的字符串

按题意".*"的意思是相同字符的0个或多个重复串

那么我们把模式串中的".*"替换成"(.)\1*"即可

队友用其他的dp做法比较快,90ms,用c++库的正则表达式要600+ms

代码

(使用g++)

#include <iostream>
#include <cstdio>
#include <string>
#include <regex>
using namespace std;
int main(){int cas;scanf("%d",&cas);string s1,s2;while(cas--){cin>>s1>>s2;s2=regex_replace(s2,regex("\\.\\*"),"(.)\\1*");printf(regex_match(s1,regex(s2))?"yes\n":"no\n");}return 0;
}

  

转载于:https://www.cnblogs.com/shuiming/p/7413726.html

HDU 6170-正则表达式相关推荐

  1. HDU 6170 2017 多校训练:Two strings(DP)

    题意: 给你两个字符串:第一个字符串只包含小写大写字母 第二个字符串除了字母之外,还有'.'和'*',其中'.'可以当成任意一个字符,'*'表示前面那个字符可以重复若干次 当然也可以重复0次,例如a. ...

  2. python 正则表达式提取数据_Python爬虫教程-19-数据提取-正则表达式(re)

    本篇主页内容:match的基本使用,search的基本使用,findall,finditer的基本使用,匹配中文,贪婪与非贪婪模式 Python爬虫教程-19-数据提取-正则表达式(re) 正则表达式 ...

  3. HDU oj 自动交题爬虫

    当我还在acm的时候就很想写这个爬虫了 后来学了python  学了点网页请求方式 然后就来写这个爬虫了 为了记录自己学习的过程写了这一系列博客 首先讲讲我的思路 第一步当然是登陆  和 cookie ...

  4. Python爬虫之HDU提交数据

    前一篇http://www.cnblogs.com/liyinggang/p/6094338.html 使用了爬虫爬取hdu 的代码,今天实现了将数据向hdu 提交的功能,接下来就是需要将两个功能合并 ...

  5. 教你小小JAVA爬虫爬到HDU首页(只为学习)

    记得以前刷hdu的时候总是发现有人能一分钟内提交很多次 而且还ac  感觉不可思议.后来百度搜了搜 原来是网络爬虫 带着这一届acm成员集训的时候有成员说hdu炸了  一直判断中  我就说是爬虫... ...

  6. HDU 4389 - X mod f(x)

    题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=4389 2012多校,第9场,1010 . 问题是,询问区间内 存在多少个 哈沙德数(Harshad ...

  7. HDU 自动刷题机 Auto AC (轻轻松松进入HDU首页)

    前言: 在写这篇文章之前,首先感谢给我思路以及帮助过我的学长们 以下4篇博客都是学长原创,其中有很多有用的,值得学习的东西,希望能够帮到大家! 1.手把手教你用C++ 写ACM自动刷题神器(冲入HDU ...

  8. hdu 4389 囧,打表

    http://acm.hdu.edu.cn/showproblem.php?pid=4389 题意 :一个数能被他各个位数之和整除则符合要求,给L,R,问区间里有多少个数符合要求. 囧,居然打表就能过 ...

  9. 我这才发现,原来我根本看不懂Java的正则表达式!

    正则表达式 (\w)((?=\1\1\1)(\1))+ (\w)((?=\1\1\1)(\1))+ 表达式说明: (\w) 表示匹配并捕获一个单词字符,将匹配内容作为第一个捕获组 (?=\1\1\1) ...

  10. 手把手教你用C++ 写ACM自动刷题神器(冲入HDU首页)

    少年,作为苦练ACM,通宵刷题的你 是不是想着有一天能够荣登各大OJ榜首,俯瞰芸芸众生,唔....要做到这件事情可是需要一定天赋的哦! 博主本身也搞过一段时间的acm,对刷题深有感触,不信可以去看我博 ...

最新文章

  1. 不会画饼的领导,不值得托付
  2. android- 9patch
  3. python pkl是什么类型的文件?怎么来打开它?(使用numpy和pickle都能打开)
  4. Python操作Excel删除一个Sheet
  5. 服务器批量修改代码,利用Redis实现多服务器批量操作
  6. mysql cluster 数据文件_关于MYSQL CLUSTER数据文件存放节点错误问题 -问答-阿里云开发者社区-阿里云...
  7. 在Shell中,“$“和““的作用
  8. Centos 查看CPU个数、核心数等信息
  9. Facebook不上市纯属炒作
  10. AUTOCAD——制作剪裁图块
  11. 使用 JavaScript 将 JSON 数据动态转换为 HTML 表
  12. 根据英语单词学法语单词
  13. cad管线交叉怎么画_CAD角度怎么画?我来告诉你!
  14. 人脸对齐SDM原理----Supervised Descent Method and its Applications to Face Alignment
  15. Python列表推导式——List
  16. 微型 Python Web 框架 Bottle - Heroin blog
  17. C++:shared_ptr以及一些常见的问题
  18. java—stream流递归实现树形结构
  19. 自动化测试简历编写应该注意哪方面?有哪些技巧?
  20. ORACLE基本语句

热门文章

  1. SFB 项目经验-03-共存迁移-Lync 2013-TO-SFB 2015-完成
  2. 前端开发面试题--html
  3. 5.6 Spring与Struts 2整合应用
  4. 帧中继和路由协议详解-在帧中继多点子接口上运行EIGRP
  5. Tornado框架中视图模板Template的使用
  6. 转移操作主机角色至Windows Server 2012 R2
  7. CCNA培训课总结笔记--配置OSPF实验(十一)
  8. TMS320C6678中Hyperlink接口的理解
  9. CIC滤波器的参数详细方法与应用
  10. linux目录名含义