[leetcode-812-Largest Triangle Area]

Posted hellowOOOrld

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[leetcode-812-Largest Triangle Area]相关的知识,希望对你有一定的参考价值。

 

You have a list of points in the plane. Return the area of the largest triangle that can be formed by any 3 of the points.

Example:
Input: points = [[0,0],[0,1],[1,0],[0,2],[2,0]]
Output: 2
Explanation: 
The five points are show in the figure below. The red triangle is the largest.

Notes:

  • 3 <= points.length <= 50.
  • No points will be duplicated.
  •  -50 <= points[i][j] <= 50.
  • Answers within 10^-6 of the true value will be accepted as correct.

思路:

暴力求解即可通过。另外给定三点坐标,求面积公式如下:

double largestTriangleArea(vector<vector<int>>& points)
 {
    int n = points.size();
    double ret = 0;
    for(int i = 0;i < n;i++)
    {
        for(int j =i+1;j < n;j++)
        {
            for(int k = j+1;k < n;k++)
            {
                ret = max(ret,area(points[i],points[j],points[k]));
            }
        }
    }
    return ret;
 }
 double area(vector<int>& a,vector<int>& b,vector<int>& c)
 {
    return 0.5*abs(a[0]*(b[1]-c[1]) +b[0]*(c[1]-a[1]) + c[0]*(a[1]-b[1]) ); 
}

参考:

http://www.ab126.com/geometric/3229.html

 

以上是关于[leetcode-812-Largest Triangle Area]的主要内容,如果未能解决你的问题,请参考以下文章

R语言使用upper.tri函数lower.tri函数diag函数改变matrix矩阵上三角形下三角形对角线的数值

Titomic收购Tri-D Dynamics

poj2663 Tri Tiling

sql TRI历史数据

numpy-tri 函数

sql 文档 - TRI / DAT / Transcore数据指南