我自己的寫得很丑很慢,開平方計(jì)算太慢了董栽,沒什么好說的码倦,看看人家的。
我的解法
class Solution {
public:
vector<int> constructRectangle(int area) {
vector<int> output;
int w = sqrt(area) / 1;
int a = 0, b = 0;
for (int i = w; i <= area; i ++)
if (area % i == 0){
b = area / i;
a = i >= b ? i : b;
output.push_back(a);
output.push_back(area / a);
return output;
}
}
};
人家的解法
平方比開方運(yùn)算快得多= =
class Solution {
public:
vector<int> constructRectangle(int area) {
if (area <= 0) return vector<int> {};
vector<int> res;
int w = area;
for (int i = 1; i * i <= area; ++i) {
if (area % i == 0) w = i;
}
return vector<int> {area / w, w};
}
};