Pagini recente » Cod sursa (job #849458) | Cod sursa (job #1392722) | Cod sursa (job #2745803) | Cod sursa (job #2436277) | Cod sursa (job #929008)
Cod sursa(job #929008)
#include <fstream>
#include <cstring>
#include<string>
#define NMAX 2000001
using namespace std;
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
int i,j,n1,n2,rez[NMAX],poz,aux;
long long nr;
string s1,s2;
int main()
{
fin>>s2;
fin.get();
fin>>s1;
n1=s1.size();
n2=s2.size();
if(n2>n1)
{
fout<<-1<<'\n';
return 0;
}
else
do
{
poz=s1.find(s2);
s1.erase(0,poz+1);
if(nr<=n1&&poz!=-1)
rez[++nr]=poz+aux;
aux+=poz+1;
}while(poz!=-1);
fout<<nr<<'\n';
for(i=1;i<=nr;++i)
fout<<rez[i]<<" ";
return 0;
}