Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def choose(n: Int, c: Int): Set[Set[Int]] =
- if (c == 0)
- Set(Set())
- else {
- val rec: Set[Set[Int]] = choose(n, c - 1)
- 1.to(n).flatMap(i => rec.map(_ + i).filter(_.size == c)).toSet
- }
- def main(args: Array[String]): Unit = {
- val xs = choose(7, 4)
- val xss = for (x <- xs; y <- xs; z <- xs) yield List(x, y, z)
- println(xss.size)
- val answer = xss.filter(e => (e(0) ++ e(1) ++ e(2)).size ==7)
- println(answer.size)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement