Cod sursa(job #904018)

Utilizator FayedStratulat Alexandru Fayed Data 3 martie 2013 16:26:16
Problema Potrivirea sirurilor Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <cstdio>
#include <cstring>
#define NMAX 2000001
using namespace std;

char A[NMAX],B[NMAX];
int Sol[NMAX];
char *p;
int k;

int main(){

  freopen("strmatch.in","r",stdin);
  freopen("strmatch.out","w",stdout);
  gets(A);
  fgets(B,NMAX,stdin);

    p = strstr(B,A);
    while(p){
        Sol[++k] = p-B;
        p++;
        p = strstr(p,A);
    }

printf("%d\n",k);
if(k > 1000)
for(register int i=1;i<=1000;++i)
printf("%d ",Sol[i]);

else
for(register int i=1;i<=k;++i)
printf("%d ",Sol[i]);

return 0;
}