KMP学长讲课
来源:互联网 发布:mysql linux安装后在哪 编辑:程序博客网 时间:2024/05/02 04:47
#include <iostream>#include <string>using namespace std;struct KMP{string base, sub;int sub_len, base_len;int next[1000];void build_base(){cin>>base;base_len = base.size();}void build_sub(){cin>>sub;sub_len = sub.size();make_next();}void make_next(){int i = 1, j = 0;next[0] = -1;while(j<sub_len){if(i == -1|| sub[i]==sub[j]) next[++j] = ++i;else i = next[i];}}int solve() {int i = 0, j = 0;int ans = 0;for(i; i < base_len; ++i) {while(j > 0&& base[i]!=sub[j])j = next[j];if(base[i]==sub[j]) ++j;if(j == sub_len) ++ans;}return ans;}}kmp;int main(){kmp.build_base();kmp.build_sub();cout<<kmp.solve()<<endl;system("pause");return 0;}
0 0
- KMP学长讲课
- 11-20学长讲课我的草稿
- 讲课
- 讲课大师 自动化讲课
- 关于讲课
- 第一次讲课
- 讲课感想
- 又一次讲课
- 控件讲课
- 如何讲课
- 20160620 讲课
- 讲课内容
- 学长说
- 学长启蒙
- 讲课大师 如何更新讲课接口
- 听方梁讲师讲课有感
- 听史上最牛历史老师讲课
- 张孝祥Java讲课
- scon入门
- 高中1029
- LeetCode-M-Insertion Sort List
- nyoj 139 我排第几个
- BZOJ 1567: [JSOI2008]Blue Mary的战役地图 Hash+set
- KMP学长讲课
- javaSE_07Java中类和对象-封装特性-思维导图
- pcDuino---通过SSH命令行上网
- 题目1034:寻找大富翁
- 项目后期Lua接入笔记09--策划Excel转Lua
- java jdbc 连接Mysql数据库
- 【死磕Java并发】----深入分析CAS
- post与get的区别
- 面向对象高级( 随手记-2)