因为area并不是很大,所以很容易想到宽的平方不会超过area,这样的话从√n向1遍历肯定是最快的,找到答案就可以输出,不过从1向√n遍历也可以通过就是了(),所以我水了一个for循环从1遍历到√n的做法,不建议参考。
class Solution {
public:
vector<int> constructRectangle(int area) {
int a,b;
for(int i=1;i*i<=area;i++)if(!(area%i))a=area/i,b=i;
return {a,b};
}
};