AOC day 1

This commit is contained in:
2021-11-30 23:13:31 -07:00
parent ccf6709d69
commit 5b73605819
7 changed files with 2048 additions and 3 deletions

View File

@@ -5,6 +5,7 @@ import kiss.Prelude;
import kiss.List; import kiss.List;
import year2018.Solutions2018; import year2018.Solutions2018;
import year2020.Solutions2020; import year2020.Solutions2020;
import year2021.Solutions2021;
@:build(kiss.Kiss.build()) @:build(kiss.Kiss.build())
class Main {} class Main {}

View File

@@ -4,3 +4,5 @@
(Solutions2018.run)) (Solutions2018.run))
(year 2020 (year 2020
(Solutions2020.run)) (Solutions2020.run))
(year 2021
(Solutions2021.run))

View File

@@ -0,0 +1,6 @@
package year2021;
import kiss.Prelude;
@:build(kiss.Kiss.build())
class Solutions2021 {}

View File

@@ -0,0 +1,31 @@
(load "../UtilMacros.kiss")
(load "day1.kiss")
(function run []
(day 1
(assert (= 1475 (countIncreases (Util.readInts "src/year2021/inputs/day1.txt"))))
(assert (= 1516 (countIncreases (for trio (slicesOf (Util.readInts "src/year2021/inputs/day1.txt") 3) (apply + trio))))))
(dayTodo 2)
(dayTodo 3)
(dayTodo 4)
(dayTodo 5)
(dayTodo 6)
(dayTodo 7)
(dayTodo 8)
(dayTodo 9)
(dayTodo 10)
(dayTodo 11)
(dayTodo 12)
(dayTodo 13)
(dayTodo 14)
(dayTodo 15)
(dayTodo 16)
(dayTodo 17)
(dayTodo 18)
(dayTodo 19)
(dayTodo 20)
(dayTodo 21)
(dayTodo 22)
(dayTodo 23)
(dayTodo 24)
(dayTodo 25))

View File

@@ -0,0 +1,5 @@
(function countIncreases [l]
.length (filter (for [a b] (pairs l false) (> b a))))
(function slicesOf [l size]
(for i (range (- l.length (- size 1))) (l.slice i (+ i size))))

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,8 @@
#! /bin/bash #! /bin/bash
DAYS=${1:-1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25} DAYS=${1:-1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25}
YEARS=${2:-2018,2019,2020} YEARS=${2:-2018,2019,2020,2021}
DEFINITIONS="-D test" DEFINITIONS=""
IFS=',' read -ra SPLIT_DAYS <<< "$DAYS" IFS=',' read -ra SPLIT_DAYS <<< "$DAYS"
for day in "${SPLIT_DAYS[@]}"; do for day in "${SPLIT_DAYS[@]}"; do
DEFINITIONS="$DEFINITIONS -D day$day" DEFINITIONS="$DEFINITIONS -D day$day"
@@ -12,4 +12,4 @@ for year in "${SPLIT_YEARS[@]}"; do
DEFINITIONS="$DEFINITIONS -D year$year" DEFINITIONS="$DEFINITIONS -D year$year"
done done
echo $DEFINITIONS echo $DEFINITIONS
haxe -D test -D days=$DAYS -D years=$YEARS $DEFINITIONS build.hxml haxe -D days=$DAYS -D years=$YEARS $DEFINITIONS build.hxml