Pagini recente » Cod sursa (job #2541718) | Cod sursa (job #2531479) | Cod sursa (job #548548) | Cod sursa (job #2590546) | Cod sursa (job #2738843)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
string A,B;
#define DIM 1008
int n,m,l_max,cons,rasp,nr_indici;
int indici[DIM];
int matrice[DIM][DIM];
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
void lungcom()
{
for(int i=0;i<=n;i++)
{
for(int j=0;j<=m;j++)
{
if( i==0 || j==0)
{
matrice[i][j]=0;
}
else if(A[i-1]==B[j-1])
{
matrice[i][j]=matrice[i-1][j-1]+1;
rasp=max(rasp,matrice[i][j]);
if(rasp==n)
{
indici[nr_indici++]=j-rasp;
}
}
else
{
matrice[i][j]=0;
}
}
}
}
int main()
{
fin>>A>>B;
n=A.length(),m=B.length();
lungcom();
fout<<nr_indici<<'\n';
for(int i=0;i<nr_indici && i<1000;i++)
{
fout<<indici[i]<<" ";
}
}