zoukankan      html  css  js  c++  java
  • POJ 1118

    #include<iostream>
    #include<set>
    #include<stdio.h>
    #include<math.h>
    #include<algorithm>
    #define MAXN 705
    using namespace std;
    
    int num;
    double p[MAXN][2];
    double a[MAXN*MAXN];
    set<int> coll;
    set<int>::iterator pos;
    multiset<int> coll_main;
    int main()
    {
        //freopen("acm.acm","r",stdin);
        int i;
        int max;
        int j;
        int k;
        int t;
        double value;
        int num;
        double s2;
        while(1)
        {
            scanf("%d",&num);
            if(num == 0)
                break;
            max = 0;
        
            for(i = 0; i < num; ++ i)
            {
                scanf("%lf%lf",&p[i][0],&p[i][1]);
            }
            for(i = 0; i < num; ++ i)
            {
                k = 0;
                for(j = 0; j < num; ++ j)
                {
                    if(i != j)
                    {
                    value = (p[i][0] - p[j][0]) / (p[i][1] - p[j][1]);
                    a[k] = value;
                    ++ k;
                    }
                }
                //////////////////////////////////////
                sort(a,a + k);
                s2 = a[0];
                j = 0;
                
                for(t = 0; t < k; ++ t)
                {
                    if(a[t] == s2)
                        ++ j;
                    else
                    {
                        if(j > max)
                        {        
                            max = j;
                        }
                        s2 = a[t];
                        -- t;
                        j = 0;
                    }
                }
                if(j > max)
                    max = j;
        //    cout<<max<<endl;
            
            //while(1)
            //{
            //    if(i*(i-1) == 2*max)
            //    {
            //        cout<<i<<endl;
            //        break;
            //    }
            //    ++ i;
            //}
            }
            ++max;
        //    cout<<max<<"======="<<endl;
            //cout<<int((1+(int)(sqrt(long double(1+8*max))+0.5))/2.0)<<endl;
            cout<<max<<endl;
        }
    }

    关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。 

    技术网站地址: vmfor.com

  • 相关阅读:
    安装HDP时的报错信息
    K-近邻(KNN)算法
    linux复杂命令
    azkaban报错记录
    azkaban的安装部署
    安装centOS后要解决的问题
    AI之微信跳一跳
    Python的lambda
    关于在vim中的查找和替换
    cdh6.3.2 hue集成hbase
  • 原文地址:https://www.cnblogs.com/gavinsp/p/4563281.html
Copyright © 2011-2022 走看看