Adding day 18 p1 and 19 p1 + creating folder 2018

This commit is contained in:
Xavier Morel
2019-01-17 16:40:36 +01:00
parent 5fb50b11af
commit 5723d21ecb
32 changed files with 121 additions and 0 deletions

18
2018/day2/part1.scala Normal file
View File

@@ -0,0 +1,18 @@
import scala.io.StdIn._
val res = Iterator
.continually(readLine)
.takeWhile(_ != null)
.toList
.map {
entry => val counts = entry
.groupBy(_.charValue)
.mapValues(_.length)
.values
(counts.find(_ == 2), counts.find(_ == 3))
}
.foldLeft((0, 0)) {
(acc, item) => (acc._1 + item._1.map(_ => 1).getOrElse(0),
acc._2 + item._2.map(_ => 1).getOrElse(0)) }
println(res._1 * res._2)

16
2018/day2/part2.scala Normal file
View File

@@ -0,0 +1,16 @@
import scala.io.StdIn._
val items = Iterator
.continually(readLine)
.takeWhile(_ != null)
.toList
val res = items
.combinations(2)
.map(x => x(0) zip x(1))
.dropWhile(_.count(t => t._1 != t._2) != 1)
.map(_.filter(t => t._1 == t._2).map(_._1))
.next
println(res.mkString(""))