Pagini recente » Cod sursa (job #2367235) | Cod sursa (job #2808742) | Cod sursa (job #2507396) | Cod sursa (job #2293156) | Cod sursa (job #879333)
Cod sursa(job #879333)
#include <fstream>
#include <string.h>
using namespace std;
ifstream f("strmatch.in");
ofstream g("strmatch.out");
char A[2000001],B[2000001];
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,2000001);
f.getline(B,2000001);
LB=strlen(B);LA=strlen(A);
if(LA<=LB)
{
i=0;j=LB-LA;
while(i<=j&& k<1000)
{ if(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;
}