zoukankan      html  css  js  c++  java
  • [BZOJ] 1610: [Usaco2008 Feb]Line连线游戏

    1610: [Usaco2008 Feb]Line连线游戏

    Time Limit: 5 Sec  Memory Limit: 64 MB
    Submit: 2264  Solved: 1017
    [Submit][Status][Discuss]

    Description

    Farmer John最近发明了一个游戏,来考验自命不凡的贝茜。游戏开始的时 候,FJ会给贝茜一块画着N (2 <= N <= 200)个不重合的点的木板,其中第i个点 的横、纵坐标分别为X_i和Y_i (-1,000 <= X_i <=1,000; -1,000 <= Y_i <= 1,000)。 贝茜可以选两个点画一条过它们的直线,当且仅当平面上不存在与画出直线 平行的直线。游戏结束时贝茜的得分,就是她画出的直线的总条数。为了在游戏 中胜出,贝茜找到了你,希望你帮她计算一下最大可能得分。

    Input

    * 第1行: 输入1个正整数:N

     * 第2..N+1行: 第i+1行用2个用空格隔开的整数X_i、Y_i,描述了点i的坐标

    Output

    第1行: 输出1个整数,表示贝茜的最大得分,即她能画出的互不平行的直线数

    Sample Input

    4
    -1 1
    -2 0
    0 0
    1 1

    Sample Output

    * 第1行: 输出1个整数,表示贝茜的最大得分,即她能画出的互不平行的直线数

    HINT

    4 输出说明: 贝茜能画出以下4种斜率的直线:-1,0,1/3以及1。

    Source

    Silver

    Analysis

    计算几何水题

    能把我肛趴下qwq

    无非是注意这样那样的细节= =

    Code

     1 #include<cstdio>
     2 #include<iostream>
     3 #include<algorithm>
     4 #include<cstdlib>
     5 #include<cmath>
     6 #define maxn 205
     7 using namespace std;
     8 
     9 int x[maxn],y[maxn];
    10 double ans[maxn*maxn];
    11 int pos = 0,n,ret = 1;
    12 double e = 1e-7;
    13 
    14 int main(){
    15     scanf("%d",&n);
    16     for(int i = 1;i <= n;i++){
    17         scanf("%d%d",&x[i],&y[i]);
    18     }
    19     
    20     for(int i = 1;i <= n;i++){
    21         for(int j = i+1;j <= n;j++){
    22             if(abs(x[i]-x[j]) > e) ans[pos++] = (y[i]-y[j])*1.0/(x[i]-x[j]);
    23             else ans[pos++] = 101010;
    24         }
    25     }
    26     
    27     sort(ans,ans+pos);
    28     
    29     for(int i = 1;i < pos;i++){
    30         if(ans[i]-ans[i-1] > e) ret++;
    31     }
    32     
    33     printf("%d",ret);
    34     
    35     return 0;
    36 }
    焦虑ing
    转载请注明出处 -- 如有意见欢迎评论
  • 相关阅读:
    MySQL严格模式总结
    python筛选关键字---error
    将pem证书转换成p12格式证书
    ## 游戏网关源码赏析
    pid获取
    顺序io_磁盘队列
    nsq源码阅读3_编译nsqd
    nsq源码阅读2_核心数据结构
    nsq源码阅读1_目录结构
    如何设计Mqtt的Retain?
  • 原文地址:https://www.cnblogs.com/Chorolop/p/7455441.html
Copyright © 2011-2022 走看看