Pagini recente » Borderou de evaluare (job #1566912) | infoarena - comunitate informatica, concursuri de programare | Cod sursa (job #315432) | Diferente pentru problema/funnygraph intre reviziile 16 si 15 | Cod sursa (job #1472483)
#include<fstream>
#include<cstring>
#define maxm 2000001
using namespace std;
ifstream f("strmatch.in");
ofstream g("strmatch.out");
char a[maxm],b[maxm];
int n,m,nr,con,i,poz,fin[maxm];
bool ok;
int main()
{
f.getline(a,maxm);
n=strlen(a);
f.getline(b,maxm);
m=strlen(b);
for(poz=0;poz<m-n+1;poz++)
{
ok=1;
i=0;
while(i<n&&ok==1)
{
if(a[i]==b[poz+i])
i++;
else
ok=0;
}
if(ok==1)
con++,fin[con]=poz;
}
g<<con<<"\n";
for(i=1;i<=min(1000,con);i++)
g<<fin[i]<<" ";
return 0;
}