Skip to content

Commit

Permalink
Make place for Project Euler solutions
Browse files Browse the repository at this point in the history
  • Loading branch information
FWDekker committed Sep 24, 2024
1 parent 8dfedf5 commit 83da5eb
Show file tree
Hide file tree
Showing 60 changed files with 228 additions and 223 deletions.
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,8 @@
# Advent of Code
My solutions to the [Advent of Code](https://adventofcode.com/).

My solutions to [Project Euler](https://projecteuler.net/) are stored in [a private submodule](https://github.com/FWDekker/project-euler).
To retrieve those, run
```sh
git submodule add [email protected]:FWDekker/project-euler.git src/main/kotlin/com/fwdekker/euler
```
8 changes: 4 additions & 4 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
plugins {
id("org.jetbrains.kotlin.jvm") version "1.9.22"
kotlin("jvm") version "2.0.20"
}

repositories {
Expand All @@ -9,9 +9,9 @@ repositories {
dependencies {
implementation("org.jgrapht:jgrapht-core:1.5.2")

testImplementation("io.kotest:kotest-assertions-core:5.8.0")
testImplementation("io.kotest:kotest-framework-datatest:5.8.0")
testImplementation("io.kotest:kotest-runner-junit5-jvm:5.8.0")
testImplementation("io.kotest:kotest-assertions-core:5.9.1")
testImplementation("io.kotest:kotest-framework-datatest:5.9.1")
testImplementation("io.kotest:kotest-runner-junit5-jvm:5.9.1")
}

kotlin {
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.fwdekker.aoc.std
package com.fwdekker.aoc


/**
Expand Down
4 changes: 2 additions & 2 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day1.kt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.Day
import com.fwdekker.std.readLines


class Day1(resource: String = resource(2023, 1)) : Day(resource) {
Expand Down
20 changes: 10 additions & 10 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day10.kt
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Coords
import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.Direction
import com.fwdekker.aoc.std.Heading
import com.fwdekker.aoc.std.cardinals
import com.fwdekker.aoc.std.cell
import com.fwdekker.aoc.std.contains
import com.fwdekker.aoc.std.coordsOf
import com.fwdekker.aoc.std.move
import com.fwdekker.aoc.std.readLines
import com.fwdekker.std.Coords
import com.fwdekker.aoc.Day
import com.fwdekker.std.Direction
import com.fwdekker.std.Heading
import com.fwdekker.std.cardinals
import com.fwdekker.std.cell
import com.fwdekker.std.contains
import com.fwdekker.std.coordsOf
import com.fwdekker.std.move
import com.fwdekker.std.readLines


class Day10(resource: String = resource(2023, 10)) : Day(resource) {
Expand Down
20 changes: 10 additions & 10 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day11.kt
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Coords
import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.allCoordsOf
import com.fwdekker.aoc.std.cartesian
import com.fwdekker.aoc.std.col
import com.fwdekker.aoc.std.cols
import com.fwdekker.aoc.std.longs
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.row
import com.fwdekker.aoc.std.rows
import com.fwdekker.std.Coords
import com.fwdekker.aoc.Day
import com.fwdekker.std.allCoordsOf
import com.fwdekker.std.cartesian
import com.fwdekker.std.col
import com.fwdekker.std.cols
import com.fwdekker.std.longs
import com.fwdekker.std.readLines
import com.fwdekker.std.row
import com.fwdekker.std.rows
import kotlin.math.max
import kotlin.math.min

Expand Down
12 changes: 6 additions & 6 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day12.kt
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.asPair
import com.fwdekker.aoc.std.ints
import com.fwdekker.aoc.std.mapSeconds
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.repeat
import com.fwdekker.aoc.Day
import com.fwdekker.std.asPair
import com.fwdekker.std.ints
import com.fwdekker.std.mapSeconds
import com.fwdekker.std.readLines
import com.fwdekker.std.repeat


class Day12(resource: String = resource(2023, 12)) : Day(resource) {
Expand Down
6 changes: 3 additions & 3 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day13.kt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.readSections
import com.fwdekker.aoc.std.transpose
import com.fwdekker.aoc.Day
import com.fwdekker.std.readSections
import com.fwdekker.std.transpose


class Day13(resource: String = resource(2023, 13)) : Day(resource) {
Expand Down
14 changes: 7 additions & 7 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day14.kt
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.foldSelf
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.rotateCCW
import com.fwdekker.aoc.std.rotateCW
import com.fwdekker.aoc.std.sortedDescending
import com.fwdekker.aoc.std.sumOfIndexed
import com.fwdekker.aoc.Day
import com.fwdekker.std.foldSelf
import com.fwdekker.std.readLines
import com.fwdekker.std.rotateCCW
import com.fwdekker.std.rotateCW
import com.fwdekker.std.sortedDescending
import com.fwdekker.std.sumOfIndexed


class Day14(resource: String = resource(2023, 14)) : Day(resource) {
Expand Down
6 changes: 3 additions & 3 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day15.kt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.readResource
import com.fwdekker.aoc.std.sumOfIndexed
import com.fwdekker.aoc.Day
import com.fwdekker.std.readResource
import com.fwdekker.std.sumOfIndexed


class Day15(resource: String = resource(2023, 15)) : Day(resource) {
Expand Down
18 changes: 9 additions & 9 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day16.kt
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.Heading
import com.fwdekker.aoc.std.cell
import com.fwdekker.aoc.std.cols
import com.fwdekker.aoc.std.contains
import com.fwdekker.aoc.std.height
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.rows
import com.fwdekker.aoc.std.width
import com.fwdekker.aoc.Day
import com.fwdekker.std.Heading
import com.fwdekker.std.cell
import com.fwdekker.std.cols
import com.fwdekker.std.contains
import com.fwdekker.std.height
import com.fwdekker.std.readLines
import com.fwdekker.std.rows
import com.fwdekker.std.width


class Day16(resource: String = resource(2023, 16)) : Day(resource) {
Expand Down
20 changes: 10 additions & 10 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day17.kt
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Chart
import com.fwdekker.aoc.std.Coords
import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.Direction
import com.fwdekker.aoc.std.Heading
import com.fwdekker.aoc.std.cell
import com.fwdekker.aoc.std.contains
import com.fwdekker.aoc.std.lastColIndex
import com.fwdekker.aoc.std.lastRowIndex
import com.fwdekker.aoc.std.readLines
import com.fwdekker.std.Chart
import com.fwdekker.std.Coords
import com.fwdekker.aoc.Day
import com.fwdekker.std.Direction
import com.fwdekker.std.Heading
import com.fwdekker.std.cell
import com.fwdekker.std.contains
import com.fwdekker.std.lastColIndex
import com.fwdekker.std.lastRowIndex
import com.fwdekker.std.readLines
import java.util.PriorityQueue


Expand Down
14 changes: 7 additions & 7 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day18.kt
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Coords
import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.Direction
import com.fwdekker.aoc.std.distance
import com.fwdekker.aoc.std.getMod
import com.fwdekker.aoc.std.move
import com.fwdekker.aoc.std.readLines
import com.fwdekker.std.Coords
import com.fwdekker.aoc.Day
import com.fwdekker.std.Direction
import com.fwdekker.std.distance
import com.fwdekker.std.getMod
import com.fwdekker.std.move
import com.fwdekker.std.readLines
import kotlin.math.abs
import kotlin.math.roundToLong

Expand Down
12 changes: 6 additions & 6 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day19.kt
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.map
import com.fwdekker.aoc.std.productOf
import com.fwdekker.aoc.std.readSections
import com.fwdekker.aoc.std.splitGEQ
import com.fwdekker.aoc.std.splitLEQ
import com.fwdekker.aoc.Day
import com.fwdekker.std.map
import com.fwdekker.std.productOf
import com.fwdekker.std.readSections
import com.fwdekker.std.splitGEQ
import com.fwdekker.std.splitLEQ


class Day19(resource: String = resource(2023, 19)) : Day(resource) {
Expand Down
12 changes: 6 additions & 6 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day2.kt
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.asPair
import com.fwdekker.aoc.std.mapFirst
import com.fwdekker.aoc.std.mapSecond
import com.fwdekker.aoc.std.product
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.Day
import com.fwdekker.std.asPair
import com.fwdekker.std.mapFirst
import com.fwdekker.std.mapSecond
import com.fwdekker.std.product
import com.fwdekker.std.readLines


class Day2(resource: String = resource(2023, 2)) : Day(resource) {
Expand Down
12 changes: 6 additions & 6 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day20.kt
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.lcm
import com.fwdekker.aoc.std.map
import com.fwdekker.aoc.std.product
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.sum
import com.fwdekker.aoc.Day
import com.fwdekker.std.lcm
import com.fwdekker.std.map
import com.fwdekker.std.product
import com.fwdekker.std.readLines
import com.fwdekker.std.sum


class Day20(resource: String = resource(2023, 20)) : Day(resource) {
Expand Down
20 changes: 10 additions & 10 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day21.kt
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Coords
import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.cardinals
import com.fwdekker.aoc.std.cell
import com.fwdekker.aoc.std.cellMod
import com.fwdekker.aoc.std.contains
import com.fwdekker.aoc.std.coordsOf
import com.fwdekker.aoc.std.foldSelf
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.width
import com.fwdekker.std.Coords
import com.fwdekker.aoc.Day
import com.fwdekker.std.cardinals
import com.fwdekker.std.cell
import com.fwdekker.std.cellMod
import com.fwdekker.std.contains
import com.fwdekker.std.coordsOf
import com.fwdekker.std.foldSelf
import com.fwdekker.std.readLines
import com.fwdekker.std.width


class Day21(resource: String = resource(2023, 21)) : Day(resource) {
Expand Down
8 changes: 4 additions & 4 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day22.kt
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.ints
import com.fwdekker.aoc.std.overlaps
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.Day
import com.fwdekker.std.ints
import com.fwdekker.std.overlaps
import com.fwdekker.std.readLines


class Day22(resource: String = resource(2023, 22)) : Day(resource) {
Expand Down
34 changes: 17 additions & 17 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day23.kt
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Chart
import com.fwdekker.aoc.std.Coords
import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.cardinals
import com.fwdekker.aoc.std.cartesian
import com.fwdekker.aoc.std.cell
import com.fwdekker.aoc.std.cols
import com.fwdekker.aoc.std.contains
import com.fwdekker.aoc.std.east
import com.fwdekker.aoc.std.firstRow
import com.fwdekker.aoc.std.lastRow
import com.fwdekker.aoc.std.lastRowIndex
import com.fwdekker.aoc.std.north
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.std.rows
import com.fwdekker.aoc.std.south
import com.fwdekker.aoc.std.west
import com.fwdekker.std.Chart
import com.fwdekker.std.Coords
import com.fwdekker.aoc.Day
import com.fwdekker.std.cardinals
import com.fwdekker.std.cartesian
import com.fwdekker.std.cell
import com.fwdekker.std.cols
import com.fwdekker.std.contains
import com.fwdekker.std.east
import com.fwdekker.std.firstRow
import com.fwdekker.std.lastRow
import com.fwdekker.std.lastRowIndex
import com.fwdekker.std.north
import com.fwdekker.std.readLines
import com.fwdekker.std.rows
import com.fwdekker.std.south
import com.fwdekker.std.west
import java.util.PriorityQueue


Expand Down
10 changes: 5 additions & 5 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day24.kt
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.asTriple
import com.fwdekker.aoc.std.cartesian
import com.fwdekker.aoc.std.longs
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.Day
import com.fwdekker.std.asTriple
import com.fwdekker.std.cartesian
import com.fwdekker.std.longs
import com.fwdekker.std.readLines
import java.math.BigDecimal
import java.math.MathContext
import kotlin.math.roundToLong
Expand Down
4 changes: 2 additions & 2 deletions src/main/kotlin/com/fwdekker/aoc/y2023/Day25.kt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.fwdekker.aoc.y2023

import com.fwdekker.aoc.std.Day
import com.fwdekker.aoc.std.readLines
import com.fwdekker.aoc.Day
import com.fwdekker.std.readLines
import org.jgrapht.Graph
import org.jgrapht.alg.StoerWagnerMinimumCut
import org.jgrapht.graph.DefaultEdge
Expand Down
Loading

0 comments on commit 83da5eb

Please sign in to comment.