Реализовать интерфейс PrefixTree Интерфейс позволяет складывать объекты произвольного класса V по заданному "пути" Seq[K] в дерево и изымать их используя комбинацию методов sub и get
Например, можно на каждом "уровне" дерева хранить Option[V] и Map[K, PrefixTree[K, V]]
trait PrefixTree[K, +V] {
def put[U >: V](path: Seq[K], value: U): PrefixTree[K, U]
def sub(path: Seq[K]): PrefixTree[K, V]
def get: V
}
Заготовка находится в PrefixTree.scala