【Leetcode刷題篇】leetcode812 最大三角形面積
給定包含多個點的集合,從其中取三個點組成三角形,返回能組成的最大三角形的面積。
示例:
輸入: points = [[0,0],[0,1],[1,0],[0,2],[2,0]]
輸出: 2
解釋:
這五個點如下圖所示。組成的橙色三角形是最大的,面積為2。
注意:
3 <= points.length <= 50.
不存在重複的點。
-50 <= points[i][j] <= 50.
結果誤差值在 10^-6 以內都認為是正確答案。
class Solution {
public double largestTriangleArea(int[][] points) {
// 儲存結果
double res = 0;
// for迴圈遍歷
int len = points.length;
for(int i=0;i<len-2;i++) {
for(int j=i+1;j<len-1;j++) {
for(int k=j+1;k<len;k++) {
res = Math.max(res,area(points[i],points[j],points[k]));
}
}
}
return res;
}
// 鞋帶公式計算面積
public double area(int[] P,int[] Q,int[] R) {
return 0.5 * Math.abs(P[0]*Q[1]+Q[0]*R[1]+R[0]*P[1]-
P[1]*Q[0]-Q[1]*R[0]-R[1]*P[0]);
}
}
相關文章
- 【Leetcode刷題篇】leetcode152 乘積最大陣列LeetCode陣列
- Leetcode刷題628. 三個數的最大乘積LeetCode
- 最大島嶼面積
- 【刷題筆記】LeetCode-53 最大子陣列和筆記LeetCode陣列
- 【Leetcode刷題篇】leetcode56 合併區間LeetCode
- HISTOGRA - 最大矩形面積(單調棧)
- LeetCode每日一題: 三角形的最大周長(No.976)LeetCode每日一題
- LeetCode每日一題: 三個數的最大乘積(No.628)LeetCode每日一題
- LeetCode刷題整理LeetCode
- leetcode刷題(一)LeetCode
- LeetCode刷題 堆LeetCode
- LeetCode 刷題—樹LeetCode
- 【LeetCode刷題(中等程度)】662. 二叉樹最大寬度LeetCode二叉樹
- leetcode 152 乘積最大子序列LeetCode
- 【題解】A23330.最大四邊形面積
- LeetCode 刷題指南(一):為什麼要刷題LeetCode
- LeetCode 刷題筆記LeetCode筆記
- leetcode刷題筆記LeetCode筆記
- LeetCode刷題記錄LeetCode
- 如何使用leetcode刷題LeetCode
- leetcode刷題--Majority ElementLeetCode
- leetcode刷題--Count PrimesLeetCode
- leetcode刷題--Reverse BitsLeetCode
- leetcode刷題--Rotate ArrayLeetCode
- leetcode刷題--Count and SayLeetCode
- Leetcode刷題分類LeetCode
- Leetcode刷題準備LeetCode
- LeetCode刷題—陣列LeetCode陣列
- Leetcode976. 三角形的最大周長LeetCode
- LeetCode刷題:設計問題篇(C++實現,持續更新中...)LeetCodeC++
- LeetCode-152-乘積最大子陣列LeetCode陣列
- 【Leetcode】152.乘積最大子陣列LeetCode陣列
- 【刷演算法】LeetCode.53-最大子序和演算法LeetCode
- Leetcode刷題——求眾數LeetCode
- leetcode刷題筆記605LeetCode筆記
- Leetcode刷題系列彙總LeetCode
- leetcode刷題--Happy NumberLeetCodeAPP
- leetcode刷題--Number of 1 BitsLeetCode