以下をベースにしているそうだ。
James W. Hunt and Thomas G. Szymanski:
A Fast Algorithm for Computing Longest Common Subsequences,
Communications of the ACM, vol.20, no.5, pp.350-353, May 1977.
<http://portal.acm.org/citation.cfm?id=359603>
単純に DP をやると O(N^2)。この方法だと、最悪は O(N^2 log N) だけど、
ほとんど O(N log N)。仕組みは、サンプルを紙でトレースしてやっと理解。
なるほどなあ。