名前のない言語で書いているプログラムに、幅が不明なテキスト ブロックがあり、このテキスト ブロックの最大幅しかわかりません。この情報を考慮して、このテキストの可能な最小幅を見つける必要があります (文字/グリフまたは文字数のメトリックを使用できないと仮定します)。これまでのところ、次のようなブルートフォースソリューションがあります。
for (int i = .1; i < maxTextWidth; i += .1)
{
if (textFitsInGivenWidth(text, i))
{
textWidth = i;
break;
}
}
できる限りこれを最適化して試してみたいと思います。私の最初の考えは、二分探索を使用することでしたが、これを適切な方法で実装するのに問題があります (それが可能かどうかさえわかりません)。上記のソリューションで指定したものだけを使用して実行時間を改善するために、ここでできることについて何か提案はありますか?