c# - 与宽高比匹配的最小尺寸

标签 c# .net algorithm

我需要找到纵横比恰好(或在 0.001 以内)某个值的最小尺寸。是否有任何快速数学技巧或框架技巧可以做到这一点?

这是我在 O(n^2) 中运行的当前想法的伪代码:

epsilon = 0.001;

from x = 1 to MAX_X
{
  from y = 1 to MAX_Y
  {
    if(Abs(x / y - aspectRatio) <= epsilon)
    {
      return new Size(x, y);
    }
  }
}
return Size.Empty;

最佳答案

不寻常。您需要找到最大公约数并将宽度和高度除以它。该算法由 Euclid 提出,已有 2300 年历史。详情 are here .

关于c# - 与宽高比匹配的最小尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3511898/

相关文章:

c# - 将两个列表映射到 C# 中的字典中

c# - 如何删除某些文本中而不是某些文本开头存在的任何 UTF-8 BOM

c# - 如何产生从起点到终点的坐标对?

c# - 使用枚举数据 C# 创建对象列表

algorithm - 有向无环图中的最大权连通子图

c# - 将用户控件绑定(bind)到 bool 属性的对面

c# - Spring.NET 等效于 Java Spring 数据访问用法

c# - 在 Quartz.Net 中调度依赖作业

c# - 长整数文字

c# - 将 csproj 文件从 winform 转换为 wpf