Cod sursa(job #837029)
| Utilizator | Data | 17 decembrie 2012 01:25:45 | |
|---|---|---|---|
| Problema | Potrivirea sirurilor | Scor | 40 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
int i,j,n,s,ok,rez,v[2000000],m;
char s1[2000000],s2[2000000];
int main()
{ fin.get(s1,200000);fin.get();
n=strlen(s1);
fin.get(s2,2000000);
m=strlen(s2);
i=0;
do
{
if(strncmp(s2+i,s1,n)==0)
v[++rez]=i+1;
++i;
}while(i<=m-n);
fout<<rez<<'\n';
if(rez<=1000)
for(i=1;i<=rez;++i)
fout<<v[i]-1<<" ";
else
for(i=1;i<=1000;++i)
fout<<v[i]-1<<" ";
return 0;
}
