一些想法
..感觉可以记录下来..
line-breaking algorithm
我们有一个可以快速计算的函数\(f(x)\)表示当某一行的\(\text{word-spacing}=x\)时造成的不美观程度,我们的目标是最小化不美观程度最大的那行的不美观程度.
我们设\(F[x]\)表示最后一行换行到x的不美观程度最小值,直接DP(可以优化一下让它变成大约\(kn\),\(k\)是一个常数)(似乎是一个1D-1D DP诶..).
加一些条件可以实现:
- 断字
- 标点的处理(如不能在行首,或在行首宽度变为0).
然后我们就完成了Knuth在1977年做的事情.