码迷,mamicode.com
首页 > 其他好文 > 详细

【HDOJ】1686 Oulipo

时间:2014-06-09 17:46:37      阅读:264      评论:0      收藏:0      [点我收藏+]

标签:des   c   style   class   blog   code   

kmp算法。

bubuko.com,布布扣
 1 #include <cstdio>
 2 #include <cstring>
 3 
 4 char src[10005], des[1000005];
 5 int next[10005], total;
 6 
 7 void kmp(char des[], char src[]){
 8     int ld = strlen(des);
 9     int ls = strlen(src);
10     int i, j;
11 
12     total = i = j = 0;
13     while (i < ld) {
14         if (des[i] == src[j]) {
15             ++i;
16             ++j;
17         } else {
18             j = next[j];
19             if (j == -1) {
20                 j = 0;
21                 ++i;
22             }
23         }
24         if (j == ls) {
25             ++total;
26             j = next[j];
27         }
28     }
29 }
30 
31 void getnext(char src[]) {
32     int i=0, j = -1;
33     next[0] = -1;
34     while (i < strlen(src)) {
35         if (j==-1 || src[i]==src[j]) {
36             ++i;
37             ++j;
38             next[i] = j;
39         } else {
40             j = next[j];
41         }
42     }
43 }
44 
45 int main() {
46     int n;
47 
48     scanf("%d", &n);
49     while (n--) {
50         scanf("%s",src);
51         scanf("%s",des);
52         getnext(src);
53         kmp(des, src);
54         printf("%d\n", total);
55     }
56 
57     return 0;
58 }
bubuko.com,布布扣

 

【HDOJ】1686 Oulipo,布布扣,bubuko.com

【HDOJ】1686 Oulipo

标签:des   c   style   class   blog   code   

原文地址:http://www.cnblogs.com/bombe1013/p/3777565.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!