Cod sursa(job #418008)

Utilizator feelshiftFeelshift feelshift Data 15 martie 2010 11:57:07
Problema Abc2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <cstdio>
#include <cstring>

int lungime,total,k,dict,count,tmp;
char string[100],subsir[10];

typedef char cuvinte[21];
cuvinte dictionar[10];

FILE * in = fopen("abc2.in","rt");
FILE * out = fopen("abc2.out","wt");

int check(int k);

int main()
{
	int i;
	
	fscanf(in,"%s",string);
	
	lungime = strlen(string);
	
	while(!feof(in))
		fscanf(in,"%s",dictionar[++total]);
	dict = strlen(dictionar[1]);
	
	/*printf("%s\n",string);
	
	for(i=1;i<=total;i++)
		printf("%s\n",dictionar[i]);*/
	
	for(i=0;i<lungime-dict;i++)
	{
		tmp = check(i);
		if(tmp)
			count = count + tmp;
	}
	
	fprintf(out,"%d",count-1);
	
	return (0);
}

int check(int k)
{
	int e,i,answer = 0;
	
	for(e=k;e<k+dict;e++)
		subsir[e-k] = string[e];
	//printf("%s\n",subsir);
	
	for(e=1;e<=total;e++)
		if(!strcmp(dictionar[e],subsir))
			answer++;
	
	memset(subsir,0,sizeof(subsir));
	
	return answer;
}