题意:给定N个坐标点, 现在要求出在共线的点的个数,输出最大值

思路:利用叉积,三点共线问题。

点a1, a2, a3, a4,a5.....an;

依次求任意两点组成的向量P , 与P共线的点的个数。

叉积:向量P,向量Q  若P * Q == 0 则说明向量P , 和Q 共线。

      P (x1, y1), Q(x2, y2)    P * Q = x1*y2- x2*y1;

11306536 NY_lv10 1118 Accepted 256K 469MS C++ 504B 2013-03-03 15:03:50
叉积,共线

 1 #include <iostream>
 2 using namespace std;
 3
 4 int main()
 5 {
 6     int n;
 7     int i, j, k;
 8     int t_max, maxx;
 9     int x[800], y[800];
10     while (cin>>n && n!=0)
11     {
12         for (i=0; i<n; i++)
13             cin>>x[i]>>y[i];
14         maxx = 0;
15         for (i=0; i<n; i++)    //点a1
16             for (j=i+1; j<n; j++)  //点a2
17             {
18                 t_max = 0;
19                 for (k=j+1; k<n; k++)   //点a3
20                     //叉积等于0 共线
21                     if ((x[j] - x[i]) * (y[k] - y[i]) - (y[j] - y[i]) * (x[k] - x[i]) == 0)   //a2a1 * a3a1 == 0 则三点共线
22
23                         t_max++;
24                     maxx = maxx < t_max ? t_max : maxx;
25             }
26         cout<<maxx+2<<endl;
27     }
28     return 0;
29 }

转载于:https://www.cnblogs.com/lv-2012/archive/2013/03/03/2941575.html

POJ 1118 Lining Up 叉积,三点共线。相关推荐

  1. poj 1118 Lining Up(水题)

    再思考一下好的方法,水过,数据太弱! 本来不想传的! #include <iostream> using namespace std; #define MAX 702 /*284K 422 ...

  2. HDU 1432 Lining Up (POJ 1118)

    枚举,枚举点 复杂度为n^3. 还能够枚举边的,n*n*log(n). POJ 1118 要推断0退出. #include<cstdio> #include<cstring> ...

  3. HDU - 4305 - Lightning 生成树计数 + 叉积判断三点共线

    HDU - 4305 题意: 比较裸的一道生成树计数问题,构造Krichhoof矩阵,求解行列式即可.但是这道题还有一个限制,就是给定的坐标中,两点连线中不能有其他的点,否则这两点就不能连接.枚举点, ...

  4. hdu 4885 (n^2*log(n)推断三点共线建图)+最短路

    题意:车从起点出发,每次仅仅能行驶L长度,必需加油到满,每次仅仅能去加油站或目的地方向,路过加油站就必需进去加油,问最小要路过几次加油站. 開始时候直接建图,在范围内就有边1.跑最短了,再读题后发现, ...

  5. 【CCCC】L3-018 森森美图 (30分),计算几何+判断三点共线+bfs最短路

    problem L3-018 森森美图 (30分) 森森最近想让自己的朋友圈熠熠生辉,所以他决定自己写个美化照片的软件,并起名为森森美图.众所周知,在合照中美化自己的面部而不美化合照者的面部是让自己占 ...

  6. codeforces 618 C. Constellation(三角形,三点共线)

    题目链接 codeforces 618 C 题意 给出n个点,取三角形,且三角形内不包含其他点 题解: 先对点坐标进行排序,X 或 Y都可以,意思是在边界取三角形,尽可能不接触其他点,如果构不成三角形 ...

  7. 笔试面试题目:三点共线的判断

    看腻了认知鸡汤,你一无所获,味同嚼蜡?看累了万字长文,你收藏了事,心事重重? 那么,我们一起,上点算法小菜,斟点程序小酒,品味一下短小的趣味算法和程序,别有一番风味. 面试题目 在本文中,我们要讨论的 ...

  8. POJ 1118 求平面上最多x点共线

    题意:给你n个点的坐标.求一条直线最多能穿过多少个点. 思路:枚举(n^2)+求斜率+排序 (复杂度n^2logn)大功告成 //By: Sirius_Ren #include <cmath&g ...

  9. hdu 5020 求三点共线的组合数(容器记录斜率出现次数)

    题意:       给你n个点,问你3点共线的组合数有多少,就是有多少种组合是满足3点共线的. 思路:      一开始抱着试1试的态度,暴力了一个O(n^3),结果一如既往的超时了,然后又在刚刚超时 ...

  10. poj 1106 Transmitters (枚举+叉积运用)

    题目链接:http://poj.org/problem?id=1106 算法思路:由于圆心和半径都确定,又是180度,这里枚举过一点的直径,求出这个直径的一个在圆上的端点,就可以用叉积的大于,等于,小 ...

最新文章

  1. 使用 .NET 框架轻松开发完美的 Web 窗体控件
  2. 本科计算机学渣,2017计算机老学渣的经验教训
  3. Some best freeware
  4. MySQL 的 bug 必须修复吗?
  5. vue项目引入字体图标iconfont
  6. 以后台服务的形式启动nodejs应用
  7. 90%做tiktok运营都存在的误区?
  8. 12. Laravel 4 迁移数据填充
  9. 摄像头bug查找工作总结
  10. .net core——打造自己的 dotnet new 微服务解决方案模板
  11. 【企业架构】什么是 Zachman 框架? 用于管理企业架构的矩阵
  12. 百度编辑器Ueditor多文本域实现
  13. 小鸟壁纸 删除 卸载 流氓 鲁大师 360 软件 弹窗 后台
  14. 聊求职:写简历的大原则与小技巧
  15. Linux面试题总结
  16. 思维导图学习法 手把手教你思维导图怎么画
  17. signal 11 linux,关于运行时Signal 11 Caught的错误
  18. 存储卡 android文件夹,安卓系统下SD卡文件夹功能介绍
  19. 计算机技术在风景园林中的应用和选择,现代信息技术在风景园林中的应用论述(原稿)...
  20. Linux设置开机自启

热门文章

  1. 年薪30W+,数据库工程师凭什么?
  2. 全网首发国内联邦学习框架研究
  3. Pytorch 深度学习实战教程(五):今天,你垃圾分类了吗?
  4. 拉普拉斯变换的性质 - 对查表
  5. 计算机专业纸质笔记本,无可替代?信息时代你还用纸质笔记本吗
  6. 用Matplotlib画两张花里胡哨的图
  7. pid的matlab仿真,MATLAB Pid仿真实验
  8. MySQL的三个锁级别(附图)
  9. 为什么中国没有诞生世界流行的编程语言?
  10. 微信公众号之自定义菜单