Cod sursa(job #496100)

Utilizator Robert29FMI Tilica Robert Robert29 Data 27 octombrie 2010 19:53:36
Problema Matrix Scor 65
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include<stdio.h>
FILE*f=fopen("matrix.in","r");
FILE*g=fopen("matrix.out","w");
int i,j,x,m,n,v[27],b[1001][1001];
char l,ok,a[1001][1001],c[1001][1001];
int main() {
	fscanf(f,"%d%d\n",&m,&n);
	for(i=1;i<=m;i++){
		for(j=1;j<=m;j++)
			fscanf(f,"%c",&a[i][j]);
		fscanf(f,"\n");	
	}
	for(i=1;i<=n;i++){
		for(j=1;j<=n;j++){
			fscanf(f,"%c",&x);
			v[x-'a'+1]++;
		}
		fscanf(f,"\n");
	}
	x=0;
	for(l=0;l<26;l++)
		for(i=1;i<=m;i++)
			for(j=1;j<=m;j++){
				b[i][j]=b[i-1][j]+b[i][j-1]-b[i-1][j-1];
				if(l==(a[i][j]-'a'))
					b[i][j]++;
				if((b[i][j]-b[i-n][j]-b[i][j-n]+b[i-n][j-n])!=v[l+1])
					c[i][j]=1;
			}
			
	for(i=n;i<=m;i++)	
		for(j=n;j<=m;j++)
			if(c[i][j]==0)
				x++; 
	fprintf(g,"%d",x);	
	fclose(g);
	fclose(f);
	return 0;
}