Pagini recente » Cod sursa (job #2942118) | Cod sursa (job #1462656) | Cod sursa (job #1267738) | Cod sursa (job #1471187) | Cod sursa (job #1569716)
#include <fstream>
#define VAL 2000005
using namespace std;
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
int A, B, i, j;
int nr, v[VAL];
string a, b;
string s;
int main()
{
fin >> a;
fin >> b;
A=a.size();
B=b.size();
for (i=0; i<B; i++)
{
if (i<A)
s+=b[i];
else
{
for (j=0; j<=A-2; j++)
swap(s[j], s[j+1]);
s[A-1]=b[i];
}
if (i>=A-1 && s==a)
{
nr++;
v[nr]=i-A+1;
}
}
fout << min(1000, nr) << '\n';
for (i=1; i<=min(1000, nr); i++)
fout << v[i] << " ";
fin.close();
fout.close();
return 0;
}