Pagini recente » Istoria paginii runda/dinamica_iii/clasament | Cod sursa (job #542370) | Cod sursa (job #1678711) | Cod sursa (job #662254) | Cod sursa (job #604306)
Cod sursa(job #604306)
#include <stdio.h>
#include <string.h>
#define NMax 2000000
int NrAp=0;
int VcAp[10];
int k=0;
char A[NMax],B[NMax];
void cautare_naiva(char A[], char B[])
{
int i=0,j=0;
int poz;
while(B[i] != A[j])
{
i=i+1;
poz=i;
j=0;
while((B[i] == A[j]) && (i<(int)strlen(B)))
{
if(j == (strlen(A)-1))
{
NrAp++;
VcAp[k++]=poz;
i=poz+1;
j=0;
while(B[i] != A[j])
{
i++;
}
poz=i;
}
else
{
i++;j++;
}
}
}
}
int main()
{
FILE *f,*g;
f=fopen("strmatch.in","r");
g=fopen("strmatch.out","w");
fscanf(f,"%s",&A);
fscanf(f,"%s",&B);
cautare_naiva(A,B);
fprintf(g,"%d \n",NrAp);
for(int i=0;i<k;i++)
fprintf(g,"%d ",VcAp[i]);
return 1;
}