一.题目描述:
给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积。
示例:
输入: points = [[0,0],[0,1],[1,0],[0,2],[2,0]]
输出: 2
解释:
这五个点如下图所示。组成的橙色三角形是最大的,面积为2。
注意:
3 <= points.length <= 50.
不存在重复的点。
-50 <= points[i][j] <= 50.
结果误差值在 10^-6 以内都认为是正确答案。
二.js代码实现:
1.实现思路:
(1)对点进行三次遍历循环
(2)依次判断每个面积大小,最后返回最大三角形的面积
2.js代码:
/**
* @param {number[][]} points
* @return {number}
*/
var largestTriangleArea = function(points) {
let res = 0;
for (let x of points) {
for (let y of points) {
for (let z of points) {
res = Math.max(res, 0.5 * (x[0] * y[1] + y[0] * z[1] + z[0] * x[1] - x[0] * z[1] - y[0] * x[1] - z[0] * y[1]))
}
}
}
return res;
};