Problem 21

This commit is contained in:
2026-03-19 15:39:41 +01:00
parent ec9f41a49e
commit b01ce98533
2 changed files with 20 additions and 0 deletions
@@ -0,0 +1,5 @@
package ninetyNineScalaProblems
object Problem21:
def insertAt(value: Any, n: Int, list: List[Any]): List[Any] =
Problem18.slice(0, n, list) ::: value :: Problem18.slice(n, list.length, list)
@@ -0,0 +1,15 @@
package ninetyNineScalaProblems
import scala.compiletime.ops.boolean
class Problem21Suite extends munit.FunSuite:
List(
((1, 0, List(1, 2, 3, 4)), List(1, 1, 2, 3, 4)),
((1, 1, List(1, 2, 3, 4)), List(1, 1, 2, 3, 4)),
((1, 3, List(1, 2, 3, 4)), List(1, 2, 3, 1, 4)),
((1, 0, List(1)), List(1, 1)),
((1, 0, List()), List(1)),
).foreach:
case ((value, n, list), expected) =>
test(s"insertAt returns [$expected]"):
assertEquals(Problem21.insertAt(value, n, list), expected)