HDU 5563 Clarke and five-pointed star(判断正五边形)
2015-11-17 23:57
459 查看
问题描述
输入描述
输出描述
输入样例
输出样例
Hint
容易看出只需要判断这5个点是否在一个正五边形上。
因此我们枚举排列,然后依次判断即可。
判定方法是,五条相邻边相等,五条对角线相等。
当然题目给的精度问题,窝只能说,如果泥做法不复杂,精度足够好的话,是可以过的。毕竟题目说的小于10^{-4}10−4是指理论上的,所以理论上适用所有的数之间的比较。所以有人问我开方前和开方后,我只能说,哪个精度高用哪个....
当然你也可以先求出凸包然后再判相邻距离......
枚举每个点的距离然后排序即可。。。。长知识了!!!!!!!!!
克拉克是一名人格分裂患者。某一天克拉克分裂为一个几何学习者,在研究多边形。 在研究某一个多边形的时候,克拉克发现他多次遇到判断5个点是否能组成一个五角星的问题,在这里,这5个点分别代表五角星的五个顶点(顶角上的点)。于是他跑来想你求助,让你写出一个程序快速判定。即对于给出的5个点,判断这5个点是否能组成一个五角星。
输入描述
第一行一个整数T(1 \le T \le 10)T(1≤T≤10),表示数据的组数。 每组数据有55行,每行有两个实数x_i, y_i(-10^9 \le x_i, y_i \le 10^9)xi,yi(−109≤xi,yi≤109),表示第ii个点的坐标。
输出描述
如果两个量相差小于10^{-4}10−4,则认为这两个量相等。 对于每组数据,如果这55个点能组成一个五角星,则输出YesYes,否则输出NoNo。(如果55个点相同,那么也能组成一个五角星。)
输入样例
2 3.0000000 0.0000000 0.9270509 2.8531695 0.9270509 -2.8531695 -2.4270509 1.7633557 -2.4270509 -1.7633557 3.0000000 1.0000000 0.9270509 2.8531695 0.9270509 -2.8531695 -2.4270509 1.7633557 -2.4270509 -1.7633557
输出样例
Yes No
Hint
样例1如图 样例2如图
容易看出只需要判断这5个点是否在一个正五边形上。
因此我们枚举排列,然后依次判断即可。
判定方法是,五条相邻边相等,五条对角线相等。
当然题目给的精度问题,窝只能说,如果泥做法不复杂,精度足够好的话,是可以过的。毕竟题目说的小于10^{-4}10−4是指理论上的,所以理论上适用所有的数之间的比较。所以有人问我开方前和开方后,我只能说,哪个精度高用哪个....
当然你也可以先求出凸包然后再判相邻距离......
枚举每个点的距离然后排序即可。。。。长知识了!!!!!!!!!
相关文章推荐
- 调整数组使奇数全部都位于偶数前面
- 常用的APT命令参数
- HBase数据迁移(2)- 使用bulk load 工具从TSV文件中导入数据
- [UWP开发]处理手机后退事件
- jquery 中的事件冒泡
- 字符设备驱动----中断程序
- Android5.0以上版本ActiveAndroid报ClassNotFoundException错误
- uboot - 主Makefile分析【1】
- 使用Hanlp加载大字典
- 在androidStudio打开eclipse工程,且保留其目录结构
- git快速入门之一:创建本地仓库并同步到远程
- Google MapReduce/GFS/BigTable三大技术的论文中译版
- 用到蛋疼的sort
- Eclipse中编译和运行时使用的JDK和JRE级别问题(关于"Bad version number in .class file"的异常解决)
- Objective-c:设计模式
- Linux下使用LVM
- 相机
- HBase数据迁移(1)-使用HBase的API中的Put方法
- this.AcceptButton = button1的用法:
- 树状数组