Cod sursa(job #2074909)

Utilizator doruliqueDoru MODRISAN dorulique Data 25 noiembrie 2017 09:42:50
Problema Potrivirea sirurilor Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <cstdio>
#include <cstring>
using namespace std;

char s[2000010],p[2000010];
int na=0,ind[1010];

int main()
{
    FILE *f=fopen("strmatch.in","r");
    fgets(p,2000010,f);//astea din pacate citesc shi \n
    fgets(s,2000010,f);
    int m=strlen(p),n=strlen(s);
    if(p[m-1]=='\n')p[--m]=0;
    if(s[n-1]=='\n')p[--n]=0;
    char *srch=strstr(s,p);
    while(srch)
    {
        if(na<1000)ind[na]=srch-s;
        na++;
        srch=strstr(srch+1,p);
    }
    fclose(f);
    f=fopen("strmatch.out","w");
    fprintf(f,"%d\n",na);
    if(na>1000)na=1000;
    for(int i=0;i<na;i++)fprintf(f,"%d ",ind[i]);
    return 0;
}