#871: 管理员救命啊。。。


lijian1987 (我回来刷题啦)

學校 : 浙江省镇海中学
編號 : 2825
來源 : [61.153.16.138]
最後登入時間 :
2012-02-19 20:05:50
c105. 00270 - Lining Up -- UVa270 | From: [61.153.16.138] | 發表日期 : 2008-11-04 19:26

测试数据究竟是什么样子的  。。我程序严格按照说明来的。。。。。。

 

 

#include<iostream>
#include<cstdio>  
#include<cstring>  
#include<cstdlib> 
#include<algorithm>
#include<cmath>  
using namespace std;
double k[490000];  
int main()  
{  
    int n,i,len,j,x[701],y[701],l,max,ans;  
    char tmp[1000],*tmp2;  
    scanf("%d",&n);  
    getchar(); 
 getchar();
    while(n>=1)  
    {  
        n--;  
        len=0;  
        while(gets(tmp))  
        {  
            if(tmp[0]==0) break;  
            tmp2=strtok(tmp," ");  
            x[len]=atoi(tmp2);  
            tmp2=strtok(NULL," ");  
            y[len++]=atoi(tmp2);  
        }  
        l=0;  
        for(i=0;i<len;i++)  
            for(j=0;j<len;j++)  
    if(i!=j)  
     k[l++]=(y[j]-y[i])*1.0/(x[j]-x[i]);
  ans=0;
  max=0;
  sort(k,k+l);
  for(i=1;i<l;i++)
   if(k[i],k[i-1])
    max++;
   else
   {
    if(max>ans) ans=max;
    max=0;
   }
  printf("%d\n",(int)(sqrt(double(ans)))+1);  
  if(n!=0) printf("\n");
    }  

    return 0;  

 

 

第一组 死也过不了 。。。。。。。测试数据发来看看

 
ZeroJudge Forum