RosettaCodeData/Task/Longest-common-substring/Kotlin/longest-common-substring.kts
2024-10-16 18:07:41 -07:00

18 lines
524 B
Kotlin

// version 1.1.2
fun lcs(a: String, b: String): String {
if (a.length > b.length) return lcs(b, a)
var res = ""
for (ai in 0 until a.length) {
for (len in a.length - ai downTo 1) {
for (bi in 0 until b.length - len) {
if (a.regionMatches(ai, b, bi,len) && len > res.length) {
res = a.substring(ai, ai + len)
}
}
}
}
return res
}
fun main(args: Array<String>) = println(lcs("testing123testing", "thisisatest"))