Cod sursa(job #837031)
| Utilizator | Data | 17 decembrie 2012 01:28:59 | |
|---|---|---|---|
| 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[2000001],m;
char s1[2000001],s2[2000001];
int main()
{ fin.get(s1,2000001);fin.get();
n=strlen(s1);
fin.get(s2,2000001);
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;
}
