Pagini recente » Cod sursa (job #2852716) | Cod sursa (job #1107485) | Cod sursa (job #21878) | Cod sursa (job #2916678) | Cod sursa (job #7323)
Cod sursa(job #7323)
#include <stdio.h>
long C[50001],m[50001], D;
int este(long a,long b)
{
if(m[a]==m[b])
return 0;
if(C[a]==C[b])
return 1;
return 0;
}
void baga(long a,long b)
{
m[b]=m[a];
--D;
}
int main()
{
freopen("pachete.in","r",stdin);
freopen("pachete.out","w",stdout);
register long i,j,n,x,y,a,b;
scanf("%ld",&n);
D=n;
scanf("%ld%ld",&a,&b);
for(i=1;i<=n;++i)
{
scanf("%ld%ld",&x,&y);
if(x-a>0 && y-b>=0)
C[i]=1;
if(x-a<=0 && y-b>0)
C[i]=2;
if(x-a<0 && y-b<=0)
C[i]=3;
if(x-a>=0 && y-b<0)
C[i]=4;
}
for(i=1;i<=n;++i)
m[i]=i;
for(i=1;i<=n;++i)
for(j=1;j<=n;++j)
if(este(i,j))
{
baga(i,j);
}
printf("%ld\n",D);
return 0;
}