UVA -birthday cake(暴力枚举)

本文介绍了通过暴力搜索算法解决二维平面上的点与直线问题的方法,包括输入处理、算法实现及输出结果的展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/****************************
* author:crazy_石头
* date:2014/04/30
* time: 145 ms
* algorithm:brute force
* Pro:UVA 
***************************/
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <string>
#include <queue>
#include <vector>
#include <climits>
 
using namespace std;
 
#define INF INT_MAX
#define eps 1e-8
#define A system("pause")
#define rep(i,h,n) for(int i=(h);i<=(n);i++)
#define ms(a,b) memset((a),(b),sizeof(a))
#define lson l , m , rt << 1
#define rson m + 1 , r , rt << 1 | 1
#define LL long long
const int maxn=100+5;
const int maxm=30;
struct E
{
    int x,y;
}a[maxn];

int main()
{
    int n,i,j,k,fuck,shit,line,up,down;
    while(cin>>n&&n)
    {
         n*=2;
         for(i=0;i<n;i++) scanf("%d%d",&a[i].x,&a[i].y);
         for(i=-500;i<=500;i++)
         {
            fuck=0;
            for(j=-500;j<=500;j++)
            {
                line=0,up=0,down=0;
                for(k=0;k<n;k++)
                {
                    shit=i*a[k].x+j*a[k].y;
                    if(!shit) {line=1;break;}
                    else if(shit>0) up++;
                    else down++;
                }
                if(!line&&up==down)
                {
                     cout<<i<<" "<<j<<endl;
                     fuck=1;
                     break;
                }
            }
            if(fuck) break;
         }
    }
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值