Pagini recente » Cod sursa (job #1191348) | Cod sursa (job #410426) | Cod sursa (job #2064320) | Cod sursa (job #1971030) | Cod sursa (job #1154233)
#include<fstream>
#include<string>
#include<vector>
using namespace std;
ifstream in("strmatch.in");
ofstream out("strmatch.out");
int main()
{
string m,n,p;
vector<int> b;
in>>m>>n;
int i=1,I=1,j,M=m.length(),N=n.length();
for(i=1;i<M;i++)
{
p=m.substr(0,i);
j=m.find(p,1);
if(j>I) I=j;
}
i=n.find(m);
b.push_back(i);
while(i!=-1)
{
i=n.find(m,i+I);
b.push_back(i);
}
if(b.at(b.size()-1)==-1) b.pop_back();
out<<b.size()<<'\n';
for(i=0;i<b.size()&&i<1000;i++) out<<b.at(i)<<" ";
}