Pagini recente » Cod sursa (job #1750501) | Cod sursa (job #37989) | Cod sursa (job #1225887) | Cod sursa (job #573471) | Cod sursa (job #1914603)
#include <fstream>
#include <vector>
using namespace std;
vector <int> x;
string a, b;
ifstream cin ("strmatch.in" );
ofstream cout("strmatch.out");
bool f(int x)
{
for (int i = 1; x + i < b.size() && i < a.size(); i++)
if (a[i] != b[x + i]) return false;
return true;
}
int main()
{
cin >> a >> b;
for (int i = 0; i + a.size() <= b.size() && i < b.size(); i++)
if (a[0] == b[i] && a[a.size() -1] == b[i - 1 + a.size()] && f(i))
x.push_back(i);
cout << x.size() << '\n';
int q = x.size();
q = min(1000, q);
for (int i = 0; i < q; i++)
cout << x[i] << ' ';
return 0;
}