美文网首页Leetcode题解-PHP版
Leetcode PHP题解--D111 492. Constr

Leetcode PHP题解--D111 492. Constr

作者: skys215 | 来源:发表于2019-07-30 23:44 被阅读0次

D111 492. Construct the Rectangle

题目链接

492. Construct the Rectangle

题目分析

给定矩形面积,求出宽高之差最小的边长。

思路

因为是求出面积,因此先用sqrt函数求开方,向下求整。
再递减,逐个尝试面积除以边长之后余数是否为0,即能否整除。

为什么从开方后的值开始?因为题目要求宽高之差要尽可能小。

最终代码

<?php
class Solution {

    /**
     * @param Integer $area
     * @return Integer[]
     */
    function constructRectangle($area) {
        $mid = floor(sqrt($area));
        for($i=$mid; $i>1; $i--){
            if($area%$i == 0){
                return [$area/$i, $i];
            }
        }
        return [$area, 1];
    }
}

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

相关文章

网友评论

    本文标题:Leetcode PHP题解--D111 492. Constr

    本文链接:https://www.haomeiwen.com/subject/kmlarctx.html