advent-of-code/2019/Scala/day01/Day1.scala
2019-12-06 22:26:44 +01:00

24 lines
543 B
Scala

package day01
import kamlib.{Reader, Wrapper}
class Day1 {
/** Find fuel needed */
def solveP1(input: List[Int]): Int =
input.foldLeft (0) {(acc, i) => acc + (i/3-2)}
/** Find fuel needed and recursive fuel */
def solveP2(input: List[Int]): Int =
{
@scala.annotation.tailrec
def findRecursiveFuel(fuel: Int, acc: Int): Int =
{
if (fuel <= 0) acc
else findRecursiveFuel((fuel/3)-2, fuel+acc)
}
input.foldLeft (0) { (acc, i) => acc + findRecursiveFuel((i/3)-2, 0)}
}
}