2020-02-17 23:21:07 -08:00
|
|
|
using Printf
|
|
|
|
|
|
2018-06-22 20:57:24 +00:00
|
|
|
function abc(str::AbstractString, list)
|
|
|
|
|
isempty(str) && return true
|
|
|
|
|
for i in eachindex(list)
|
|
|
|
|
str[end] in list[i] &&
|
|
|
|
|
any([abc(str[1:end-1], deleteat!(copy(list), i))]) &&
|
|
|
|
|
return true
|
|
|
|
|
end
|
|
|
|
|
return false
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
let test = ["A", "BARK","BOOK","TREAT","COMMON","SQUAD","CONFUSE"],
|
|
|
|
|
list = ["BO","XK","DQ","CP","NA","GT","RE","TG","QD","FS",
|
|
|
|
|
"JW","HU","VI","AN","OB","ER","FS","LY","PC","ZM"]
|
|
|
|
|
for str in test
|
|
|
|
|
@printf("%-8s | %s\n", str, abc(str, list))
|
|
|
|
|
end
|
2015-02-20 09:02:09 -05:00
|
|
|
end
|