uva10167
/*
暴力 过了 要使得两半的 樱桃数目相等 去试每一个斜率 还好他这里要的是 A、B
都为正整数 这样范围就锁定在200*100 个点范围内
*/
#include <cstdio>
#include <string.h>
#include <iostream>
using namespace std;
struct point{
int x,y;
}node[110];
void solve(int num)
{
int i;
for(int A=-100;A<=100;A++)
{
for(int B=-100;B<=100;B++){
int L=0,R=0;
for(i=0;i<num;i++){
int d=A*node[i].x+B*node[i].y;
if(d>0)L++;
if(d<0)R++;
if(d==0) break;
}
if(L==num/2&&R==num/2&&i==num){ printf("%d %d\n",A,B);return ; }
}
}
}
int main()
{
int num,n,i;
while(scanf("%d",&n)==1){
if(n==0) break;
num=0;
for(i=0;i<n*2;i++){
int a,b;
scanf("%d%d",&a,&b);
if((a*a+b*b)<=10000){
node[num].x=a;
node[num++].y=b;
}
}
solve(num);
}
return 0;
}

浙公网安备 33010602011771号