以下问题取自算法问题(问题653):
你被给予了2个数字矩阵.找到一个O(n log n)算法,该算法置换数组中的行,使得数组中的任何一列都不包含比⌈√n更长的子序列(可能不包含连续的数组元素).
我不知道如何解决这个问题.我认为它可能会使用某种分而治之的复发,但我似乎无法找到它.
有没有人有任何想法如何解决这个问题?
请考虑Word 2013中的下表
A BBB
A CCC
D E F
Run Code Online (Sandbox Code Playgroud)
A,B和C是合并的单元格.
A和B是空的.C A
里面有文字.
现在以下代码
Set rng = ActiveDocument.Range(0, 0)
With rng.Find
.Forward = True
.Wrap = wdFindStop
.Execute "A"
End With
Run Code Online (Sandbox Code Playgroud)
崩溃了Execute "A"
.
如果我改变文本Execute "B"
它没有找到任何东西,但没有崩溃的话.问题仅出现在2013年.
我们尝试Selection.Find
逐个手动搜索,但这两个都很慢.
有没有快速的方法来规避这个错误?
编辑:这是我构建的最小失败示例.在我们的应用程序中,我们使用了很多Range.Find
,有时使用wrap,几乎从不从Document.Start开始
EDIT2:进一步调查显示,如果以兼容模式(Word 97-2003格式)打开Document,则不存在错误.