मेरे पास एक और उत्तर है जो मुझे लगता है कि सपाट नक्शा का अनुकरण करता है (पता चला कि यह समाधान डुप्लिकेट लागू करते समय इकाई देता है)
implicit class ListGeneric[A](l: List[A]) {
def nDuplicate(x: Int): List[A] = {
def duplicateN(x: Int, tail: List[A]): List[A] = {
l match {
case Nil => Nil
case n :: xs => concatN(x, n) ::: duplicateN(x, xs)
}
def concatN(times: Int, elem: A): List[A] = List.fill(times)(elem)
}
duplicateN(x, l)
}
}
def times(n: Int, ls: List[String]) = ls.flatMap{ List.fill(n)(_) }
लेकिन यह एक पूर्व निर्धारित सूची के लिए है और आप प्रत्येक तत्व के लिए n बार डुप्लिकेट करना चाहते हैं