找寻子串
1 #include <stdio.h> 2 #include <stdlib.h> 3 /* 4 输入的数全部满足a%b==0||b%a==0 5 找寻子串 6 输入: 7 5 2 8 4 2 2 4 4 9 8 10 9 11 输出: 12 1 13 */ 14 int N,M,i,j; 15 void maopao(int a[],int n) 16 { 17 int flag=0; 18 for(i=0;i<n-1;i++) 19 { 20 flag=0; 21 for(j=0;j<n-i-1;j++) 22 if(a[j]>a[j+1]) 23 { 24 int t=a[j]; 25 a[j]=a[j+1]; 26 a[j+1]=t; 27 flag=1; 28 } 29 if(flag==0) 30 break; 31 } 32 } 33 34 void main() 35 { 36 scanf("%d%d",&N,&M); 37 int a[N],b[M]; 38 int c=0; 39 for(i=0;i<N;i++) 40 { 41 scanf("%d",&a[i]); 42 } 43 for(i=0;i<M;i++) 44 { 45 scanf("%d",&b[i]); 46 } 47 maopao(a,N); 48 int flag=0; 49 for(i=0;i<M;i++) 50 { 51 for(j=0;j<N-1;j++){ 52 if(a[j]==a[j+1]) flag++; 53 if(a[j]!=a[j+1]) flag=0; 54 if(b[i]==a[j]+a[j+1]) { 55 if(flag%2==0) c++; 56 } 57 } 58 } 59 printf("%d\n",c); 60 }