九度OJ 1094 String Matching
2014-02-28 23:37
183 查看
题目描述: Finding all occurrences of a pattern in a text is a problem that arises frequently in text-editing programs. Typically,the text is a document being edited,and the pattern searched for is a particular word supplied by the user. We assume that the text is an array T[1..n] of length n and that the pattern is an array P[1..m] of length m<=n.We further assume that the elements of P and T are all alphabets(∑={a,b...,z}).The character arrays P and T are often called strings of characters. We say that pattern P occurs with shift s in the text T if 0<=s<=n and T[s+1..s+m] = P[1..m](that is if T[s+j]=P[j],for 1<=j<=m). If P occurs with shift s in T,then we call s a valid shift;otherwise,we calls a invalid shift. Your task is to calculate the number of vald shifts for the given text T and p attern P.输入: For each case, there are two strings T and P on a line,separated by a single space.You may assume both the length of T and P will not exceed 10^6. 输出: You should output a number on a separate line,which indicates the number of valid shifts for the given text T and pattern P.样例输入:
abababab abab样例输出:
3
KMP还不会。。暴力A了
#include<stdio.h>#include<string.h>char a[1000000],b[1000000];int main(void){while(scanf("%s%s",a,b) != EOF){int i = 0,len = strlen(a);char * p = a;while(p != NULL){p = strstr(p,b);if(p != NULL){++i;++p;}}printf("%d\n",i);}return 0;}
相关文章推荐
- 九度OJ 1094 String Matching
- 九度oj-1094-String Matching
- 九度OJ—题目1094:String Matching
- 题目1094:String Matching
- 题目1094:String Matching
- 又一道图论题PKU1094“Sorting It All Out”我很容易就把代码写长了
- POJ 1094
- ZJU-1094
- 拓扑排序,poj 1094
- 拓扑排序 附POJ 1094 Sorting It All Out 解题报告
- poj 1094 Sorting It All Out 很好的拓扑排序,让我对拓扑排序有了一个很好的写法!!!
- 九度OJ 1172 哈夫曼树(不用建树)
- poj 1094 拓扑排序
- poj1094 Sorting It All Out
- POJ 1094 最短路算法
- POJ 1094 && ZOJ 1060 Sorting It All Out 【拓扑排序入门】
- poj 1094 Sorting It All Out (拓补)
- 九度OJ 题目1136:Number Steps
- 九度OJ 1081 清华09机试题之递推数列
- 九度OJ 教程52 素数筛选