1 #include<cstdio>
2 #include<cstring>
3 const int maxm=1e4+5;
4 const int maxn=1e6+5;
5 char p[maxm];
6 char t[maxn];
7 int f[maxm];
8 int ans;
9 void getfail()
10 {
11 int m=strlen(p);
12 f[0]=f[1]=0;
13 for(int i=1;i<m;i++){
14 int j=f[i];
15 while(j&&p[j]!=p[i])
16 j=f[j];
17 f[i+1]=p[j]==p[i]?j+1:0;
18 }
19 }
20 void kmp()
21 {
22 int m=strlen(p);
23 int n=strlen(t);
24 getfail();
25 int j=0;
26 for(int i=0;i<n;i++){
27 while(j&&p[j]!=t[i])
28 j=f[j];
29 if(p[j]==t[i])
30 j++;
31 if(j==m){
32 ans++;
33 }
34 }
35 }
36 int main()
37 {
38 int test;
39 scanf("%d",&test);
40 while(test--){
41 scanf("%s",&p);
42 scanf("%s",&t);
43 ans=0;
44 kmp();
45 printf("%d\n",ans);
46 }
47 return 0;
48 }