LeetCode 492. Construct the Rectangle (算法)
2017-05-23 21:29
225 查看
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:
You need to output the length L and the width W of the web page you designed in sequence.
Example:
Note:
The given area won't exceed 10,000,000 and is a positive integer
The web page's width and length you designed must be positive integers.
输入一个正整数n,将其拆成两个正整数L和W的乘积,使L和W的差最小,且L>=W。
思路:从根号n开始遍历,直到找到第一个能够整除n的数。
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.
Note:
The given area won't exceed 10,000,000 and is a positive integer
The web page's width and length you designed must be positive integers.
输入一个正整数n,将其拆成两个正整数L和W的乘积,使L和W的差最小,且L>=W。
思路:从根号n开始遍历,直到找到第一个能够整除n的数。
vector<int> constructRectangle(int area) { int s = sqrt(area),l; for (l=s;l<=area;l++) { if(area%l==0) break; } vector<int> ans(0); ans.push_back(l); ans.push_back(area/l); sort(ans.begin(),ans.end(),greater<int>()); return ans; }
相关文章推荐
- 【算法作业2】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(Java)
- leetcode-492-Construct the Rectangle
- leetcode 492 Construct the Rectangle
- LeetCode 492. Construct the Rectangle
- LeetCode-492. Construct the Rectangle (Java)
- 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
- LeetCode "492. Construct the Rectangle"