Skip to content

Commit ca1682d

Browse files
committed
p12
1 parent aa81786 commit ca1682d

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

src/main/scala/problems/p12/P12.scala

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,19 @@ import org.scalatest.Assertions._
77

88
object P12 {
99
def main(args: Array[String]): Unit = {
10+
// case 01
11+
assert(decode(List((4, 'a), (1, 'b), (2, 'c), (2, 'a), (1, 'd), (4, 'e)))
12+
== List('a, 'a, 'a, 'a, 'b, 'c, 'c, 'a, 'a, 'd, 'e, 'e, 'e, 'e))
13+
14+
// case 02
15+
assert(decode(List()) == List())
16+
17+
// case 03
18+
assert(decode(List((4, 'a))) == List('a, 'a, 'a, 'a))
19+
20+
// case 04
21+
assert(decode(List((1, 'a))) == List('a))
1022
}
1123

12-
def decode[A](ls: List[(Int, A)]): List[A] = ???
24+
def decode[A](ls: List[(Int, A)]): List[A] = ls.flatMap(x => List.fill(x._1)(x._2))
1325
}

0 commit comments

Comments
 (0)