Cod sursa(job #501689)

Utilizator vanilievanilie vanilie Data 16 noiembrie 2010 09:31:55
Problema Potrivirea sirurilor Scor 14
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<iostream>
#include<stdio.h>
int main()
{
	FILE *f,*g;
	char a[200000],b[200000];
	int c,d,i,m[1000],k,e;
	f=fopen("strmatch.in","r");
	g=fopen("strmatch.out","w");
	fscanf(f,"%s",&a);
	fscanf(f,"%s",&b);
	c=strlen(b);
	d=0;
	k=0;
	e=strlen(a);
	for(i=0;i<c;i++)
	{
		if(b[i]==a[d])
		{
			d++;
		}
		else if ( b[i]!=a[d])
			d=0;
		if(d==e)
		{ 
			m[k]=i-e+1;
			k++;
			d=0;
			i=m[k-1]+1;
		}
		
		if(k==1000)
			i=c-1;
	}
	fprintf(g,"%d \n",k );
	for(i=0;i<k;i++)
		fprintf(g,"%d ",m[i]);
	fclose(f);
	fclose(g);
}