Cod sursa(job #1912362)

Utilizator duesakBourceanu Cristian duesak Data 8 martie 2017 03:57:32
Problema Potrivirea sirurilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<fstream>
#include<cstring>
using namespace std;
ifstream fin("strmatch.in");
ofstream fout("strmatch.out");
char A[2000001],B[2000001];
int v[1001];
int main(){
    int la,lb,i,j;
    bool b;
    fin.get(A,2000000);
    fin.get();
    fin.get(B,2000000);
    la=strlen(A);
    lb=strlen(B);
    for(i=0;i<lb+1-la;i++){
        b=true;
        for(j=0;j<la;j++)
            if(A[j]!=B[i+j]){b=false;break;}
        if(b)
            if(v[0]<1000)v[++v[0]]=i;
            else ++v[0];
    }
    fout<<v[0]<<'\n';
    for(i=1;i<=v[0];i++)
        fout<<v[i]<<" ";
    fout<<'\n';
    fin.close();
    fout.close();
    return 0;
}