Pagini recente » Cod sursa (job #143563) | Rating infoarena | Cod sursa (job #1740031) | Cod sursa (job #754285) | Cod sursa (job #143585)
Cod sursa(job #143585)
#include <cstdio>
#include <string>
#include <vector>
using namespace std;
#define MAXN 2000001
char tmp[MAXN];
string A, B;
vector<int> match;
int main()
{
freopen("strmatch.in", "rt", stdin);
freopen("strmatch.out", "wt", stdout);
scanf("%s", tmp); A = tmp;
scanf("%s", tmp); B = tmp;
for (size_t k = 0; k + A.size() - 1 < B.size(); k++)
{
int ok = 1;
for (int i = 0; i < (int)A.size() && ok; i++)
ok = (A[i] == B[i + k]);
if (ok)
match.push_back(k);
}
printf("%d\n", (int)match.size());
for (size_t k = 0; k < match.size() && k < 1000; k++)
printf("%d ", match[k]);
printf("\n");
return 0;
}