KMP模板(KMP)

放一个模板在这里搞事情。。。。。。

学KMP的话找SYCstudio吧(博客链接

代码(多组数据,O(n)求一个串是否在另一个串里出现过)

#include<cstdio>
#define R register
const int N=1e5+9;
char s[N],t[N];
int ne[N];
int main(){
	ne[0]=-1;
	R int i,j;
	while(~scanf("%s%s",s,t)){
		for(i=1;t[i];++i){
			for(j=ne[i-1];~j&&t[i]!=t[j+1];j=ne[j]);
			ne[i]=t[i]==t[j+1]?j+1:-1;
		}
		for(j=-1,i=0;s[i]&&t[j+1];++i){
			for(;~j&&s[i]!=t[j+1];j=ne[j]);
			j+=s[i]==t[j+1];
		}
		puts(t[j+1]?"NO":"YES");
	}
	return 0;
}
posted @   Flash_Hu  阅读(249)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示
剑桥
17:14发布
剑桥
17:14发布
5°
西风
7级
空气质量
相对湿度
34%
今天
多云
-3°/5°
周六
-1°/3°
周日
-2°/7°