题解 | # 二巧板#
二巧板
https://ac.nowcoder.com/acm/contest/17561/E
纯正的签到题
这个题目很明显,我们可以旋转和移动两块板子,那么我们可以将任意的板子的其中一条边重合即可
这里可以使用向量×乘的方法计算三角形面积,记得取绝对值,防止负数的情况
#include<iostream> #include<algorithm> using namespace std; double S(double x1,double y1,double x2,double y2,double x3,double y3){ double a=x2-x1,b=y2-y1,c=x3-x1,d=y3-y1; return abs(a*d-b*c)/2; } int main(){ double x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x6,y6; cin>>x1>>y1>>x2>>y2>>x3>>y3>>x4>>y4>>x5>>y5>>x6>>y6; printf("%.2lf",S(x1,y1,x2,y2,x3,y3)+S(x4,y4,x5,y5,x6,y6)); }