Leetcode-PHP题解D77-812-Largest-Triangle-Area

D77 812. Largest Triangle Area

题目链接

812. Largest Triangle Area

题目分析

给定一组坐标,返回能组成面积最大的三角形面积。

思路

只能套for循环了。利用三边求面积公式得面积。

最终代码

<?php
class Solution {

    /**
     * @param Integer[][] $points
     * @return Float
     */
    function largestTriangleArea($points) {
        $pointAmount = count($points);
        $max = -1;
        for($i=0;$i<=$pointAmount;$i++){
            for($j=$i+1;$j<$pointAmount;$j++){
                for($k=$j+1;$k<$pointAmount;$k++){
                    $p1 = $points[$i];
                    $p2 = $points[$j];
                    $p3 = $points[$k];
                    $area = abs($p1[0]*$p2[1]+$p2[0]*$p3[1]+$p3[0]*$p1[1]-$p1[0]*$p3[1]-$p2[0]*$p1[1]-$p3[0]*$p2[1])/2;
                    if($area>$max){
                        $max = $area;
                    }
                }
            }
        }
        return $max;
    }
}

若觉得本文章对你有用,欢迎用爱发电资助。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理