14 lines
343 B
Plaintext
14 lines
343 B
Plaintext
func createSubstrings(String word) -> Array {
|
|
gather {
|
|
combinations(word.len+1, 2, {|i,j|
|
|
take(word.substr(i, j-i))
|
|
})
|
|
}
|
|
}
|
|
|
|
func findLongestCommon(String first, String second) -> String {
|
|
createSubstrings(first) & createSubstrings(second) -> max_by { .len }
|
|
}
|
|
|
|
say findLongestCommon("thisisatest", "testing123testing")
|