Cod sursa(job #42403)

Utilizator anna_bozianuBozianu Ana anna_bozianu Data 29 martie 2007 10:02:45
Problema Regiuni Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<stdio.h>
long double a[201],b[201],c[201],x[201],y[201];
long int n,m,i,j,k,cod[201],ok,l,p[201][201];
int main()
{
	FILE *f,*g;
	f=fopen("regiuni.in","r");
	g=fopen("regiuni.out","w");
	fscanf(f,"%ld%ld",&n,&m);
	for(i=1;i<=n;i++)fscanf(f,"%Lf%Lf%Lf",&a[i],&b[i],&c[i]);
	for(i=1;i<=m;i++)fscanf(f,"%Lf%Lf",&x[i],&y[i]);
	for(i=1;i<=m;i++)
	{ for(j=1;j<=n;j++)
	  {if((a[j]*x[i]+b[j]*y[i]+c[j])>0)cod[j]=1;
	   else cod[j]=0;
	  }
	  ok=0;
	  for(j=1;j<=l;j++)
	  { ok=1;
	    for(k=1;k<=n;k++)
	    if(cod[k]!=p[j][k]) {ok=0;break;}
	    if(ok) break;
	  }
	 if(ok==0){l++;
		   for(k=1;k<=n;k++)
		   p[l][k]=cod[k];
		  }
	 }
	fprintf(g,"%ld\n",l);
	fcloseall();
	return 0;
}