Pagini recente » Cod sursa (job #1287371) | Cod sursa (job #1006336) | Cod sursa (job #714323) | Cod sursa (job #989410) | Cod sursa (job #1412477)
#include <cstdio>
int t;
int n;
struct str
{
int x;
int y;
}a[200001];
int abs(int a)
{
if(a<0) return -a;
return a;
}
int cmmdc(int a,int b)
{
if(a%b==0) return b;
if(b%a==0) return a;
return cmmdc(a%b,b%a);
}
int main()
{
freopen ("perfect2.in","r",stdin);
freopen ("perfect2.out","w",stdout);
scanf("%d%d",&t,&n);
if(t==1)
{
int maxx=0,maxy=0,minx=4500,miny=4500;
for(int i=1;i<=n;i++)
{
scanf("%d%d",&a[i].x,&a[i].y);
if(maxx<a[i].x) maxx=a[i].x;
if(minx>a[i].x) minx=a[i].x;
if(maxy<a[i].y) maxy=a[i].y;
if(miny>a[i].y) miny=a[i].y;
}
printf("%d %d %d %d\n",minx,miny,maxx,maxy);
}
else
{
for(int i=1;i<=n;i++) scanf("%d%d",&a[i].x,&a[i].y);
int p1,p2;
int ct=0;
for(int i=2;i<=n;i++)
{
p1=abs(a[1].x-a[i].x);
p2=abs(a[1].y-a[i].y);
if((p1!=0&&p2!=0&&cmmdc(p1,p2)==1)) ct++;
else if(p1==0)
{
if(p2==1) ct++;
}
else if(p2==0)
{
if(p1==1) ct++;
}
}
printf("%d\n",ct);
}
}