Cod sursa(job #2884072)

Utilizator RobertlelRobert Robertlel Data 2 aprilie 2022 12:55:07
Problema Potrivirea sirurilor Scor 38
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <cstring>

using namespace std;

ifstream f("strmatch.in");
ofstream g("strmatch.out");

char a[2000005],b[2000005];

int n,m,j,i,cnt,cnt1,poz[2000005],auxi;

int main()
{
    f>>a>>b;
    m=strlen(a)-1,n=strlen(b)-1;

    for(i=0;i<n;i++)
    {
        auxi=i;
        j=0;
        cnt=0;
        while(b[i]==a[j])
        {
            j++;
            i++;
            cnt++;
        }
        cnt--;
        if(cnt==m)
            {
                cnt1++;
                poz[cnt1]=auxi;
            }
        i=auxi;
    }
   g<<cnt1<<'\n';
   if(cnt1>=1000)
    cnt1=1000;
   for(i=1;i<=cnt1;i++)
    g<<poz[i]<<" ";
    return 0;
}