UVa270
来源:互联网 发布:软件算人工挖土 编辑:程序博客网 时间:2024/06/08 14:16
给你N个点(N<700)
求最多在一条直线上的点。
枚举以每一个点为原点,求它与其他点的斜率,斜率相同则说明在同一条直线上。
只要枚举然后排序,最后求连续最长斜率相同的点就可以了。
AC代码:
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;const int Arsize=701;struct Node{float x,y;};Node coordinate[Arsize];int max_node;double k_gradient[Arsize];int main(){int case_num,i,num_coordinate,j,k,num,m,l;char str[100];cin >> case_num;cin.get();cin.get();while(case_num--){i=0;max_node=0;while(gets(str)){if(!str[0])break;sscanf(str,"%f%f",&coordinate[i].x,&coordinate[i].y);i++;}num_coordinate=i;for(i=0;i<num_coordinate;i++){for(j=0,k=0;j<num_coordinate;j++){if(i!=j){k_gradient[k++]=(coordinate[i].y-coordinate[j].y)/(coordinate[i].x-coordinate[j].x);}}sort(k_gradient,k_gradient+k);for(k=0;k<num_coordinate-1;k++){for(m=k,l=k+1,num=2;k_gradient[m]==k_gradient[l];m++,l++,num++);if(num>max_node)max_node=num;}}cout << max_node;cout << endl;if(case_num)cout << endl;}return 0;}
- UVa270
- uva270
- uva270
- uva270
- uva270 - Lining Up
- uva270 Lining Up 搜索?
- UVA270- Lining Up
- uva270 已成功AC!
- UVA270-Lining Up
- UVALive5379 UVA270 Lining Up
- [排序&&模拟]Lining Up uva270
- uva270 - Lining Up(暴力)
- uva270 级角排序水题
- uva270 - Lining Up(几何 - 最大共线点)
- C++string类常用函数
- 虚拟机下运行多个VxWorks的尝试
- E:Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
- scrollloader.js 用于backbone.js
- LIB&DLL
- UVa270
- 多个数据求平均数防止溢出
- HDU 1789 做作业使罚分少,贪心
- 【鳄鱼小顽皮爱洗澡游戏攻略】SWAMPY关卡 全部视频攻略集合
- 正则基础之——反向引用
- HTML5与JQuery.Mobile(二)
- CVPR2012 link
- float和double两数间比较大小
- 正则基础之——捕获组(capture group)