hdu1686 最大匹配次数 KMP
题意:
给你两个串,问你串a在串b中出现了多少次。
思路:
直接匹配,KMP时匹配到匹配串的最后一个的时候不用跳出,直接匹配就行了,最后一个'/0'不会和目标串匹配,所以经过next[l2]就直接自动找到该去的位置了,怎么说呢,今天刚学的KMP,给我的感觉就是"记忆化搜索"。
#include<stdio.h> #include<string.h> char a[1100000] ,b[11000]; int next[11000];void get_next(int m) {int j ,k;j = 0 ,k = -1;next[0] = -1;while(j < m){if(k == -1 || b[j] == b[k])next[++j] = ++ k;elsek = next[k];}return ; }int KMP(int n ,int m) {int sum = 0;int i ,j;for(j = i = 0 ;i < n ;){if(a[i] == b[j]){if(j == m - 1)sum ++;i ++ ,j ++;}else{j = next[j];if(j == -1){j = 0;i ++;}}}return sum; }int main () {int t ,n ,m;scanf("%d" ,&t);while(t--){scanf("%s %s" ,b ,a);n = strlen(a);m = strlen(b);if(m > n) puts("0");else{get_next(m);printf("%d\n" ,KMP(n ,m));}}return 0; }
hdu1686 最大匹配次数 KMP相关推荐
- 计算字符串t在字符串s中出现的次数(KMP)
题意:给出两个字符串s和t,求t在s中出现的个数 思路:用kmp算法,在第一次匹配(t,s)后,如果t的前缀和后缀一样,就可以直接将s移动到与后缀匹配的位置,不必只一位一位的移 代码如下: def f ...
- 3000+长文带你进入KMP算法思想
1. 基本介绍 原文最先在博客园发布,原地址:3000+长文带你进入KMP算法思想 1.1 说明 时间复杂度: O ( N ) O(N) O(N): 空间复杂度: O ( N ) O(N) O(N): ...
- [转载] python 去除字符串中指定字符
参考链接: Python字符串 replace python中的strip()可以去除头尾指定字符 ss = '我的电话是18827038663,也是微信号,\n 请加入,谢谢\n\n\n' prin ...
- 2021.7纪中快乐游记(下)
DayDayDay 7:7:7: 7.187.187.18 周日放假! 早上居然6:30就起来了.去吃了个早餐就回机房. 按照原计划,应该是要写作业的,所以很自觉的拿出数学试卷写完一张半. 然后看到c ...
- DragonEnglish——COCA20000单词+音频+释义+例句及翻译内容聚合
DragonEnglish--COCA20000单词+音频+释义+例句及翻译内容聚合 视频演示 生成数据库 匹配例句 翻译例句 数据恢复 单词音频获取 项目文件结构 总结 前言: 前段时间,我了解到了 ...
- 服务器LINUX查看文件操作
LINUX查看文件操作 步骤命令如下: grep # 显示 key 所在行及前后5行grep -5 'key' filegrep -C 5 'key' file # 显示 key 所在行及前5行gre ...
- hdu--1358--KMP算法失配函数getfail()的理解--Period
/*Name: hdu--1358--PeriodAuthor: shen_渊Date: 20/04/17 10:24Description: 长度/向后移动的位数 = 出现的次数 kmp其实匹配到了 ...
- 做题记录(2019年2月10日起)
开个博客记录一下自己做过的题: 2019年: 2月: UVA10082 (字符串常量水题) https://vjudge.net/problem/UVA-10082 UVA272 (字符串替换水题) ...
- KMP模版 KMP求子串在主串出现的次数模版
求取出现的次数 : #include<bits/stdc++.h> const int maxn = 1e6 + 10; char mo[maxn], str[maxn];///mo为模 ...
最新文章
- 关于Jfinal的分享代码托管GitHub
- Ubuntu 对比 CentOS 后该如何选择?
- linux下安装php的imagick扩展模块(附php升级脚本)
- 【Android 逆向】ART 脱壳 ( InMemoryDexClassLoader 脱壳 | InMemoryDexClassLoader 类加载器脱壳点总结 )
- 对话系统有哪些最新进展?这17篇EMNLP 2021论文给你答案
- LeetCode 72. 编辑距离(DP)
- 第5篇:Flowable-Modeler详述之开发环境搭建
- iphone7尺寸_iPhone 12 mini、12 Pro Max真机对比图赏:尺寸直观感受下
- 5G to B核心网建设白皮书发布:2025年运营商toB市场高达6020亿美元
- ser crt linux 乱码,大师为你解决securecrt中文乱码【处理指南】
- Java对象的serialVersionUID在序列化和反序列化的用途
- 从氨基酸到大分子(蛋白质、核酸)
- java中的事件派发机制_事件派发器模式
- 基于java宠物商店管理系统(java毕业设计)
- sap 新增科目表_在SAP中新建会计科目
- 微信小程序数据库一次查询多个条件的方法
- 基于SSM的大学生创业众筹平台网站 毕业设计-附源码212000
- 强化学习——双臂攀爬机构运动控制
- C语言剖析OC的rangeOfString方法
- 公众号改名了,聊聊我的思考