Cod sursa(job #182925)
| Utilizator | Data | 21 aprilie 2008 15:11:26 | |
|---|---|---|---|
| Problema | Potrivirea sirurilor | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
#include <iostream.h>
#include <fstream.h>
#include <string.h>
ifstream f("strmatch.in");
ofstream g("strmatch.out");
const long max = 2000000;
char a[max],b[max],*p=b;
long n,m;
int main()
{
f.getline(a);
f.getline(b);
n=strlen(a);
m=strlen(b);
long i,c[1000];
int nr=0;
for(i=1;(i<=m-n+1)&&(nr<1000);i++)
{
if (strncmp(a,p,n)==0)
{
nr++;
c[nr]=i-1;
}
p++;
}
g<<nr<<endl;
for(i=1;i<=nr;i++)
g<<c[i]<<" ";
f.close();
g.close();
return 0;
}
