Pagini recente » Cod sursa (job #1218561) | Cod sursa (job #1188177) | Cod sursa (job #2597858) | Cod sursa (job #1427582) | Cod sursa (job #1756440)
#include <fstream>
#include <cstring>
using namespace std;
int n,m,i,nr[1010],j,ap,ok,k;
char v[2000001],w[2000001];
ifstream fin ("strmatch.in");
ofstream fout ("strmatch.out");
int main (){
fin>>v;
fin>>w;
n = strlen (v);
m = strlen (w);
/* for (i=0;i<n;i++)
fout<<v[i];
fout<<"\n";
for (i=0;i<m;i++)
fout<<w[i];
*/
k = 0;
for (i=0;i<m;i++){
if (w[i] == v[k]){
k++;
if (k == n){
ap++;
if (ap <= 1000)
nr[ap] = i-n+1;
k = 0;
i -= n;
i++;
}
}
else
k = 0;
}
fout<<ap<<"\n";
if (ap > 1000)
ap = 1000;
for (i=1;i<=ap;i++)
fout<<nr[i]<<" ";
return 0;
}