SSL.1715计算面积(计算几何)
Posted SSL_LKJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSL.1715计算面积(计算几何)相关的知识,希望对你有一定的参考价值。
计算面积
Description
呆子是一个很聪明的人但也是一个很粗心的人,因此常常会丢三落四。一次老师给呆子留了一个很简单的题目,已知平面上一平行四边形的四个顶点,求这个平行四边形的面积。但粗心的呆子却只记了三个点的坐标,因此呆子现在和郁闷。你现在能帮助呆子计算一下老师留给呆子的平行四边形可能的最大面积是多少吗?
Input
首先输入一个整数t表示测试数据的组数(1 =< t <= 30),接下来的t行,每行三对整数,表示呆子已知的平行四边形的顶点坐标。每对整数x, y(0<=x, y <= 10000)中第一个数表示横坐标,第二个数表示纵坐标。每组输入保证是三个不同的点。
Output
共输出t行,第i行为第i组数据的最大可能面积。
输出结果保留一位小数。如果这样的平行四边形不存在,即求得的面积大小为0则输出Error。
输入样例
2
1 2 3 4 5 6
17 28 89 67 189 25
输入样例
Error
6924.0
解题思路
求出三角形面积,取最大
AC代码
#include<algorithm>
#include<cstdio>
using namespace std;
int cj(int x1,int y1,int x2,int y2)
return x1*y2-x2*y1;
int main()
int T;
scanf("%d",&T);
while(T--)
int x1,y1,x2,y2,x3,y3;
scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3);
int ans1=cj(x2-x1,y2-y1,x3-x1,y3-y1),ans2=cj(x1-x2,y1-y2,x3-x2,y3-y2),ans3=cj(x1-x3,y1-y3,x2-x3,y2-y3);//求面积
ans=max(ans1,max(ans2,ans3));//要最大
if(ans==0)printf("Error\\n");
else printf("%d.0\\n",ans);
return 0;
谢谢
以上是关于SSL.1715计算面积(计算几何)的主要内容,如果未能解决你的问题,请参考以下文章