计算几何————洛谷P1222 三角形

来源:互联网 发布:织梦cookies 编辑:程序博客网 时间:2024/05/21 21:01
题目大意:
       给出一些点要你判断一条直线上最多可能有几个点

思路:
    本来觉得求叉积可能会超时,毕竟n《=700,但是直到(我膝盖中了一箭)我写出叉积的程序交上去后才发现居然没有超时。。。。。。
核心代码:
    
 

int cj(int xx,int y,int z)
    {
     return(x[y].x-x[xx].x)*(x[z].y-x[xx].y)-(x[z].x-x[xx].x)*(x[y].y-x[xx].y);  
}
 
//x数组是记录点的位置
main:
for(i=1;i
    {
  
     for(j=i+1;j
        {sum=0;
  for(k=j+1;k<=n;k++)
         {
          if(cj(i,j,k)==0)sum++;
          if(sum>ans)
           ans=sum;
   }
        }
 } 
    
反思:
    这是计算几何中我做的第一题,有些东西没有论证过就写上去,交了好几次才ac所以以后应该好好理顺思路
0 0
原创粉丝点击