d055 - 11437 - Triangle Fun
題目描述
題目給定三角形 ABC 三個頂點的座標,要求計算由 AD, BE, CF 三條線段交點組成的三角形 PQR 的面積,其中 D, E, F 分別是 BC, CA, AB 的三等分點 (CD=2BD, AE=2CE, BF=2AF)。
解題思路
根據題目描述,三角形 PQR 的面積是三角形 ABC 面積的 1/7。因此,只需要計算出三角形 ABC 的面積,然後除以 7,再四捨五入到整數即可。三角形 ABC 的面積可以使用行列式公式計算。
複雜度分析
- 時間複雜度: O(1)
- 空間複雜度: O(1)
程式碼
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n;
double x1, y1, x2, y2, x3, y3;
cin>>n;
while(n--){
cin>>x1>>y1>>x2>>y2>>x3>>y3;
double area=abs(x1*y2+x2*y3+x3*y1-x2*y1-x3*y2-x1*y3)/14.0;
int area2=area;
if((int)(area*10)%10>=5)
++area2;
cout<<area2<<'\n';
}
}