L3-021 神坛 (30 分)

在古老的迈瑞城,巍然屹立着 n 块神石。长老们商议,选取 3 块神石围成一个神坛。因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好。特殊地,如果有两块神石坐标相同,或者三块神石共线,神坛的面积为 0.000

长老们发现这个问题没有那么简单,于是委托你编程解决这个难题。

输入格式:

输入在第一行给出一个正整数 n(3 ≤ n ≤ 5000)。随后 n 行,每行有两个整数,分别表示神石的横坐标、纵坐标(−10​9​​≤ 横坐标、纵坐标 <10​9​​)。

输出格式:

在一行中输出神坛的最小面积,四舍五入保留 3 位小数。

输入样例:

8
3 4
2 4
1 1
4 1
0 3
3 0
1 3
4 2

输出样例:

0.500

样例解释

输出的数值等于图中红色或紫色框线的三角形的面积。

极角排序,遍历每个点和其余所有点向量,找的相邻两条线段,求三角形面积

叉积 absin(),三角形面积 0.5absin()

AC代码:

#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
const int N = 5010;
struct point{long long x,y;
}p1[N],p2[N];
bool cmp(point point1,point point2){return point1.x*point2.y-point2.x*point1.y>0;
}
int main(){// freopen("1.txt","r",stdin);int n;scanf("%d",&n);for(int i=0;i<n;i++){scanf("%lld%lld",&p1[i].x,&p1[i].y);}double ans=-1;for(int i=0;i<n;i++){int cnt=0;for(int j=0;j<n;j++){if(i==j) continue;p2[cnt].x=p1[j].x-p1[i].x;p2[cnt].y=p1[j].y-p1[i].y;cnt++;}sort(p2,p2+cnt,cmp);//n-1条向量for(int j=0;j<n-2;j++){if(ans==-1||ans>p2[j].x*p2[j+1].y-p2[j+1].x*p2[j].y)ans=p2[j].x*p2[j+1].y-p2[j+1].x*p2[j].y;}}printf("%.3f",ans*0.5);return 0;
}

L3-021 神坛 (30 分)相关推荐

  1. 【CCCC】L3-021 神坛 (30分)计算几何+求三角形面积(极角排序)

    problem L3-021 神坛 (30分) 在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如 ...

  2. L3-021 神坛 (30分)

    L3-021 神坛 (30分) 在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标 ...

  3. 7-4 神坛 (30分)

    7-4 神坛 (30分) 在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标相同, ...

  4. L3-021 神坛 (30分)(图论)

    L3-021 神坛 (30分) 在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标 ...

  5. L3-021 神坛 (30 分)-PAT 团体程序设计天梯赛 GPLT

    在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标相同,或者三块神石共线,神坛的面 ...

  6. L3-3 神坛 (30分)

    在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标相同,或者三块神石共线,神坛的面 ...

  7. L3-021 神坛 (30分)

    在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标相同,或者三块神石共线,神坛的面 ...

  8. PTA:7-4 神坛 (30 分)

    一.题目 在古老的迈瑞城,巍然屹立着 n 块神石.长老们商议,选取 3 块神石围成一个神坛.因为神坛的能量强度与它的面积成反比,因此神坛的面积越小越好.特殊地,如果有两块神石坐标相同,或者三块神石共线 ...

  9. 神坛 (30 分)(立体几何求三个点组成的最小面积)

    题目:https://pintia.cn/problem-sets/994805046380707840/problems/994805046577840128 在古老的迈瑞城,巍然屹立着 n 块神石 ...

最新文章

  1. 微生物相关网络构建教程:MENA, LSA, SparCC和CoNet
  2. python中的继承有什么特点_python类的继承是什么?类的继承有什么样的规则?
  3. 工作三年的Android程序员 跳槽到“阿里“的面试经验分享
  4. spring cloud 自定义配置源及配置刷新
  5. 关于WampServer一些配置修改
  6. 学习Java之前先学C语言
  7. Elasticsearch性能监控(一)
  8. 带你重新认识ZooKeeper!java数组合并去重
  9. Creating and Interning Symbols
  10. matlab求解scara运动空间,SCARA机器人直线运动下的极限点求解算法
  11. 会议安排问题(贪心算法)
  12. html5:初学h标签的使用 p标签 br标签 hr标签
  13. python百位数千位数取整
  14. java权限控制是什么_论Java访问权限控制的重要性
  15. 使用gpu服务器搭建人脸识别系统,人脸识别gpu服务器配置
  16. 一种简单的MOS管直流电机驱动电路
  17. 分享一组Rpg Marker人物行走,游戏素材图片,共20张图片
  18. 明明有网 但是下边显示小地球怎么办 一招解决
  19. 拉取小米MIUI系统的framework.jar实践之旅
  20. 李航《统计学习方法》系列Python实现

热门文章

  1. 计算机上删除c$共享,IPC$、ADMIN$、C$、D$都是什么?如何关闭取消删除Windows默认共享...
  2. openwrt 配置网桥 vlan 多个wan口 以及web界面配置总结
  3. 【AUTOSAR-E2E】-2.1-配置E2E:基于E2EPW配置一个RX接收的Signal Group(使用E2E Profile 2)
  4. 小唐说设计模式————原型模式
  5. 洛谷刷题:火星人、奖学金、纪念品分组、统计数字、字符串的展开
  6. 专利申请的流程和时间
  7. 应届生软件测试薪资大概多少?
  8. 【职业人生】如何有效的在职场当中避免工作失误和提高个人发展
  9. 倾角传感器在倾斜稳定性测量中的应用
  10. 公有云人脸识别技术原理