やりたかったこと
与えられた文字列に共通する部分文字列を取り出したい。PTXQCというパッケージにLCSn()というツールが容易されている。
install.packages("PTXQC", dependencies = TRUE)
PTXQC::LCSn(c("AAAAACBBBBB", "AAAAADBBBBB", "AAAABBBBBEF")) > [1] "BBBBB"
問題の名前
最長共通部分文字列(Longest common substrings; LCS)、とよばれる古典的な問題らしい。最長共通部分列(Longest common subsequence)と呼ばれるよく似た問題も同じLCSなので、メモしておかないと忘れる。
Longest common substrings