Algorithm 构造矩形算法是如何工作的?
我正在研究一个脑筋急转弯的问题,我有正确的解决方案,但想澄清它是如何工作的。更具体地说,为什么这里需要面积的平方根,在面积模w==0之前,解每次递减的值是多少?是否有使用面积平方根的几何原理 解决方案:Algorithm 构造矩形算法是如何工作的?,algorithm,geometry,Algorithm,Geometry,我正在研究一个脑筋急转弯的问题,我有正确的解决方案,但想澄清它是如何工作的。更具体地说,为什么这里需要面积的平方根,在面积模w==0之前,解每次递减的值是多少?是否有使用面积平方根的几何原理 解决方案: public int[] constructRectangle(int area) { int w = (int)Math.sqrt(area); while (area%w!=0) w--; return new int[]{area/w, w}; } 问题: 构造矩
public int[] constructRectangle(int area) {
int w = (int)Math.sqrt(area);
while (area%w!=0) w--;
return new int[]{area/w, w};
}
问题:
构造矩形添加到列表
对于web开发人员来说,了解如何设计网页大小非常重要。因此,给定一个特定矩形网页的面积,您现在的工作是设计一个矩形网页,其长度L和宽度W满足以下要求:
int w = (int)Math.sqrt(area);
查找距离区域的sqrt最近的整数w
while (area%w!=0) w--;
递减w
,直到它分成区域
,没有余数
return new int[]{area/w, w};
如果w
划分为区域
且没有余数,则高度必须为area/w
从面积的平方根开始
表示矩形的高度和宽度将尽可能接近
当然,如果你的面积是一个素数,那么你将得到w=1h=area
查找距离区域的sqrt最近的整数w
while (area%w!=0) w--;
递减w
,直到它分成区域
,没有余数
return new int[]{area/w, w};
如果w
划分为区域
且没有余数,则高度必须为area/w
从面积的平方根开始
表示矩形的高度和宽度将尽可能接近
当然,如果你的面积是一个素数,那么你将得到w=1h=area
矩形的面积可能并不总是一个完美的正方形。矩形的面积可能并不总是一个完美的正方形。