目录

  • 救救企鹅【KMP】

救救企鹅【KMP】


https://ac.nowcoder.com/acm/problem/20862
KMP匹配,记录匹配的开始下标。

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
char s[N],a[N],b[N];
int ne[N],n,m;
unordered_map<int,int>mp;
int main(void)
{cin>>s+1>>a+1>>b+1;int n=strlen(a+1),m=strlen(s+1);for(int i=2,j=0;i<=n;i++){while(j&&a[i]!=a[j+1]) j=ne[j];if(a[i]==a[j+1]) j++;ne[i]=j;}for(int i=1,j=0;i<=m;i++){while(j&&s[i]!=a[j+1]) j=ne[j];if(s[i]==a[j+1]) j++;if(j==n) mp[i-n+1]=1;//匹配了记录最开始匹配的下标}for(int i=1;i<=m;i++){if(mp[i]) cout<<b+1,i=i+n-1;//替换else cout<<s[i];}return 0;
}

2021算法竞赛入门班第十节课【字符串】练习题相关推荐

  1. 2021算法竞赛入门班第七节课【图论】练习题

    目录 挖沟[最小生成树板子题] 公交线路[最短路板子题] 道路建设[最小生成树] 挖沟[最小生成树板子题] https://ac.nowcoder.com/acm/problem/17509 #inc ...

  2. 2021算法竞赛入门班第四节课【搜索】练习题

    目录 Jelly[简单bfs] maze[建图求最短路] wyh的迷宫[BFS] 幸运数字Ⅱ[爆搜] 迷宫[变种的bfs] 走出迷宫[模板dfs] 魔法数字[状态转移bfs] Jelly[简单bfs] ...

  3. 2021算法竞赛入门班第九节课【线段树】练习题

    题单地址:https://ac.nowcoder.com/acm/problem/collection/1265?asc=true&order=difficulty 目录 情人节的电灯泡[二维 ...

  4. 2021算法竞赛入门班第二节课【递归、分治、二分】练习题

    目录 华华给月月准备礼物[二分] The Biggest Water Problem[模拟] Bits[递归模拟 / 未完成] [NOIP2004]FBI树[树的后序遍历] [USACO 2009 D ...

  5. 2021算法竞赛入门班第一节课【枚举、贪心】习题

    目录 [USACO 2007 Jan S]保护花朵[经典贪心] [NOIP2005]校门外的树[区间合并] [NOIP2006]明明的随机数[签到] [HNOI2003]激光炸弹[二维前缀和] 铺地毯 ...

  6. 2021算法竞赛入门班第一节课枚举贪心习题

    文章目录 1.明明的随机数 2.回文日期 3.校门外的树 4.数学考试 5.Subsequence 6.字符串 7.丢手绢 8.拼数 9.纪念品分组 10.国王的游戏 11.铺地毯 12.「土」巨石滚 ...

  7. 2021算法竞赛入门班第八节课【数学】习题

    目录) 最大公约数(lcm) [NOIP2011]计算系数[组合数] 大水题[容斥定理] 最大公约数(lcm) https://ac.nowcoder.com/acm/problem/16710 #i ...

  8. 2021算法竞赛入门班第三节课【堆、栈、队列、并查集】等习题

    目录 新建 Microsoft Office Word 文档[小根堆] 加边的无向图[并查集] 好串[栈 / 括号匹配] [NOIP2004]合并果子[小根堆] DongDong认亲戚[并查集] 新建 ...

  9. (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO

    下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinej ...

最新文章

  1. jittor和pytorch网络对比之context_encoder
  2. 使用await / async时,HttpClient.GetAsync(...)永远不会返回
  3. Android 5.1 Lollipop的Zygote分析——下篇
  4. Collecting package metadata (current_repodata.json): done Solving environment: failed with repodata
  5. ip 地址 192.168.1.255 代表( )。_判定IP地址合法性的三种方法
  6. mfc 学习的第二天
  7. 【杂谈】Solr的自动聚类carrot2和facet关系和比较
  8. linux下oracle11g的安装-图文安装
  9. 2022年最新前端面试题
  10. html页面调用高德地图,html前端使用高德地图入门教程
  11. www.xttblog.com尚硅谷Java视频教程_SpringBoot视频教程
  12. iOS 的 (签名验签)Code Signing 体系
  13. css设置文字外发光
  14. 签到方式出“新招”!人脸识别考勤系统
  15. 聊聊Hive数据血缘——从Atlas没有列级血缘的Bug讲起
  16. Root Moto X Style XT1570 国行系统
  17. [HTML5] Video 标签播放及控制视频
  18. 数组的定义、初始化和使用
  19. shardingsphere实例应用
  20. ORBSLAM3编译生成与应用

热门文章

  1. 9.2 mnist_with_summaries tensorboard 可视化展示
  2. Thread Group(线程组)
  3. 【Linux】【Services】【SaaS】Docker+kubernetes(13. 部署Jenkins/Maven实现代码自动化发布)...
  4. C++运行库 Neptune C++ Runtime Library(xbmc)
  5. MSSQL 2005 DML触发器
  6. Item 29. Virtual Constructors and PrototypeItem 30. Factory Method
  7. STM32 TIMER初始化步骤
  8. 二十、 二叉树的同构
  9. scrapy 安装_安装scrapy时出错
  10. EOS 共识机制 (5)超级节点投票