LeetCode 492. Construct the Rectangle
2017-07-25 10:29
453 查看
492. Construct the Rectangle
Description
For a web developer, it is very important to know how to design a web page’s size. So, given a specific rectangular web page’s area, your job by now is to design a rectangular web page, whose length L and width W satisfy the following requirements:1. The area of the rectangular web page you designed must equal to the given target area. 2. The width W should not be larger than the length L, which means L >= W. 3. The difference between length L and width W should be as small as possible.
You need to output the length L and the width W of the web page you designed in sequence.
Example: Input: 4 Output: [2, 2] Explanation: The target area is 4, and all the possible ways to construct it are [1,4], [2,2], [4,1]. But according to requirement 2, [1,4] is illegal; according to requirement 3, [4,1] is not optimal compared to [2,2]. So the length L is 2, and the width W is 2.
Solution
题意即对于一个数,返回两个数满足:第一个数比第二个数大,两数乘积等于所给数,两数尽可能相近。我的思路就是先求平方根,如果恰好满足,就直接返回,否则从平方根取整那个数向上找第一组因子,所找数便满足题意。代码如下.
class Solution { public: vector<int> constructRectangle(int area) { vector<int> rnt; int m = floor(sqrt(area)); if (m * m == area) { rnt.push_back(m); rnt.push_back(m); } else { for (int i = m + 1; i <= area;i++) { if (area % i == 0) { rnt.push_back(i); rnt.push_back(area / i); break; } } } return rnt; } };
相关文章推荐
- leetcode 492 Construct the Rectangle
- leetcode 492. Construct the Rectangle
- LeetCode 492. Construct the Rectangle (算法)
- leetcode 492. Construct the Rectangle
- leetcode 492. Construct the Rectangle
- LeetCode 492 Construct the Rectangle
- LeetCode "492. Construct the Rectangle"
- leetcode 492. Construct the Rectangle
- LeetCode刷题 | 492. Construct the Rectangle
- 【Leetcode】492. Construct the Rectangle
- leetcode-492-Construct the Rectangle
- [LeetCode]492. Construct the Rectangle
- [Leetcode] 492. Construct the Rectangle 解题报告
- leetcode 492. Construct the Rectangle(easy)
- LeetCode - 492. Construct the Rectangle
- python--leetcode 492. Construct the Rectangle
- 【算法作业2】LeetCode 492. Construct the Rectangle
- LeetCode-492. Construct the Rectangle (Java)
- [LeetCode]492. Construct the Rectangle(构造矩形)
- LeetCode 492. Construct the Rectangle(Java)