Pagini recente » Cod sursa (job #1689687) | Cod sursa (job #1727756) | Cod sursa (job #650301) | Cod sursa (job #1181975) | Cod sursa (job #2589298)
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <string.h>
#include <fstream>
using namespace std;
char a[2000001], b[2000001];
int poz[200001];
ifstream f("strmatch.in");
ofstream g("strmatch.out");
int main()
{
int nr = 0;
f >> a;
f >> b;
int l1 = strlen(a);
int l2 = strlen(b);
for( int i = 0; i < l2; i++ )
if (b[i] == a[0])
{
int k = i+1, j = 1;
while (j < l1 && k < l2 && b[k] == a[j])
{
j++;
k++;
}
if (j == l1)
{
nr++;
poz[nr] = i;
}
}
g << nr << endl;
for (int i = 1; i <= nr; i++)
g << poz[i] << ' ';
}