Cod sursa(job #670759)

Utilizator impulseBagu Alexandru impulse Data 30 ianuarie 2012 07:35:39
Problema Potrivirea sirurilor Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.85 kb
#include<fstream>
#include<cstring>
using namespace std;
#define filein "strmatch.in"
#define fileout "strmatch.out"

FILE *fin, *fout;
char *str1, *str2;
int mInd[1000], current;
int main()
{
    fin = fopen(filein, "r");
    str1 = new char;
    str2 = new char;
    fgets(str1, 2000000, fin);
    fgets(str2, 2000000, fin);
    str1[strlen(str1) - 1] = '\0';
    fclose(fin);
    current = 0;
    char* ind = strstr(str2, str1);
    if(ind == NULL)
    {

    }
    else
    {
        do
        {
            mInd[current] = (int)(ind - str2);
            current++;
            ind = strstr(ind + 1, str1);
        }while (ind != NULL);
    }

    fout = fopen(fileout, "w");
    fprintf(fout, "%d\n", current);
    for(int i = 0; i < current; i++)
        fprintf(fout, "%d ", mInd[i]);
    fclose(fout);
    return 0;
}