提问人:Amanda James 提问时间:2/8/2023 更新时间:2/8/2023 访问量:55
构造矩形LeetCode问题,看不懂代码
Construct Rectangle LeetCode Problem, Can't Understand Code
问:
我目前正在研究一个 leetcode 问题来构造一个矩形。一个 int 值将被传递到一个方法中,从那里我需要两个长度和宽度值,其中长度和宽度必须尽可能小,L >= W。我看了几个解决方案,但无法掌握这个概念。在第 4 行,结果不是总是产生面积吗?那么for循环是如何继续的呢?例如,如果面积是 26,我们在第 4 行进行计算,那么我们不是总是在第 4 行得到相同的数字吗?但是,当我运行代码时,它给出了 [13,2] 的正确结果。
1 class Solution {
2 public int[] constructRectangle(int area) {
3 for(int w=(int)Math.sqrt(area);w>0;w--){
4 if((area/w)*w==area)return new int[]{area/w,w};
}return new int[]{};
}
}
答: 暂无答案
评论
System.out.println(area/w + " " + w);