Cod sursa(job #879348)

Utilizator Edward2012Eduard Ursinschi Edward2012 Data 15 februarie 2013 12:00:24
Problema Potrivirea sirurilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
#include <string.h>
using namespace std;
ifstream f("strmatch.in");
ofstream g("strmatch.out");
char A[1800000],B[1800000];
long v[1005],k,LB,LA,i,j;
int potrivit(int i)
{ for(int j=0;j<LA;j++)
    if(B[i+j]!=A[j])return 0;
  return 1;
}
int main()
{f.getline(A,1800000);
 f.getline(B,1800000);
 LB=strlen(B);LA=strlen(A);
 if(LA<=LB)
 {
  i=0;j=LB-LA;
  while(i<=j&& k<1000)
   { if(A[0]==B[i] && potrivit(i))v[++k]=i;
     i++;
   }

   g<<k<<'\n';
 for(i=1;i<=k;i++) g<<v[i]<<' ';
 g<<'\n';
 }
 else
 { g<<"0\n";}



    return 0;
}