Pagini recente » Cod sursa (job #2104462) | Cod sursa (job #57461) | Cod sursa (job #1117655) | Cod sursa (job #2183563) | Cod sursa (job #1903124)
#include <fstream>
#include <string>
#include <vector>
using namespace std;
vector <int> x;
string a, b;
int i, q;
void read()
{
ifstream f("strmatch.in");
f >> a >> b;
f.close();
}
void write()
{
ofstream f("strmatch.out");
f << q << '\n';
int q = min(q, 1000);
for (int i = 0; i < q; i++)
f << x[i] << ' ' ;
f.close();
}
int main()
{
read();
int i;
for (i = 0; i + a.size() <= b.size() && i < b.size() && x.size() < 1000; i++)
if (a[0] == b[i] && a[a.size() -1] == b[i - 1 + a.size()] && a == b.substr(i, a.size()))
x.push_back(i);
q = x.size();
for (i; i + a.size() <= b.size() && i < b.size(); i++)
if (a[0] == b[i] && a[a.size() -1] == b[i - 1 + a.size()] && a == b.substr(i, a.size()))
q++;
write();
return 0;
}