Pagini recente » Monitorul de evaluare | Cod sursa (job #3131731) | Cod sursa (job #2052343) | Cod sursa (job #131153) | Cod sursa (job #944974)
Cod sursa(job #944974)
#include <fstream>
using namespace std;
ifstream f("strmatch.in");
ofstream g("strmatch.out");
char a[200000],b[200000];
long long i,j,k,n1,n2,nr,ok,d[20000];
int main()
{
while (a[n1]!='\n')
{ n1++;
f>>noskipws>>a[n1];
}
n1--;
while (b[n2]!='\n')
{ n2++;
f>>noskipws>>b[n2];
}
n2--;
for (i=1;i<=n2;i++)
{
if (b[i]==a[1])
{ ok=1;
for (j=2;j<=n1;j++)
if (a[j]!=b[i+j-1]){ok=0;break;}
if(ok){nr++;d[nr]=i-1;}
}
}
g<<nr<<'\n';
for(i=1;i<=nr;i++)g<<d[i]<<" ";
f.close();
g.close();
}