26 lines
638 B
Scala
26 lines
638 B
Scala
package aoc.y2017
|
|
|
|
import aoc.Day
|
|
|
|
object Day03 extends Day {
|
|
|
|
override def part1(input: String): String = {
|
|
case class Cell(num: Int, stepSize: Int, stepFrac: Int, stepped: Int, dist: (Int, Int))
|
|
val inum = input.toInt
|
|
(inum match {
|
|
case 1 => 0
|
|
case _ =>
|
|
val layer = (Math.sqrt(inum).ceil / 2).floor.toInt
|
|
val square = ((layer + 1) * 2) - 1
|
|
val diff = (square * square) - inum
|
|
val wave = Math.abs(layer - (diff % (layer * 2)))
|
|
layer + wave
|
|
}).toString
|
|
}
|
|
|
|
override def part2(input: String): String = {
|
|
"Not Currently Implemented" // TODO Implement this
|
|
}
|
|
|
|
}
|