Pagini recente » Cod sursa (job #1420911) | Cod sursa (job #327573) | Cod sursa (job #1854093) | Cod sursa (job #2218859) | Cod sursa (job #609661)
Cod sursa(job #609661)
#include <fstream>
#include <cstring>
#include <vector>
using namespace std;
#define MAX 2000001
ifstream fi;
ofstream fo;
char a[MAX];
char b[MAX];
int lena;
int lenb;
int k;
vector<int> sol;
int main()
{
// citire
fi.open("strmatch.in");
fi >> a;
fi >> b;
fi.close();
lena = strlen(a) - 1;
lenb = strlen(b) - 1;
k = 0;
// parcurgere
for (int i = 0; i <= lenb - lena + 1; i++)
{
for (int j = 0; j <= lena; j++)
{
if (b[i + j - 1] != a[j])
break;
if (j == lena)
{
++k;
sol.push_back(i);
}
}
}
// tiparire
fo.open("strmatch.out");
fo << k << "\n";
vector<int>::iterator it;
for (it = sol.begin(); it != sol.end(); ++it)
fo << *it - 1 << " ";
fo.close();
return 0;
}