Advent of Code (2021–2022)

Team Dodona · Universiteit Gent

daily cartoon by Gary Grady (@GaryJGrady)

Je bevindt je op een schip in het midden van de oceaan en bent je een beetje aan het bezighouden als plots een alarm afgaat! Je haast je naar het dek om te zien of je ergens kunt helpen. Blijkbaar struikelde één van de Elfen en liet daarbij de sleutels van de slee in de oceaan vallen!

Voor je het weet zit je in een onderzeeër die de Elfen operationeel houden voor dit soort situaties. De duikboot is bedekt met kerstverlichting (typisch Elfisch) en heeft zelfs een experimentele antenne die de sleutels zou moeten kunnen opsporen als je de signaalsterkte hoog genoeg krijgt. Er is een kleine meter die de signaalsterkte van de antenne aangeeft op een schaal van 0-50 sterren.

Je buikgevoel zegt dat je tegen 25 december aan 50 sterren moet geraken om zo een zorgeloze Kerst te kunnen vieren.

Verzamel sterren door raadsels op te lossen. Elke dag van de advent worden er twee raadsels gepubliceerd. Elk raadsel levert één ster op. Veel succes!

Advent Of Code 2021 (Eric Wastl)

Advent of Code timeline: 2020 2021

You’re minding your own business on a ship at sea when the overboard alarm goes off! You rush to see if you can help. Apparently, one of the Elves tripped and accidentally sent the sleigh keys flying into the ocean!

Before you know it, you’re inside a submarine the Elves keep ready for situations like this. It’s covered in Christmas lights (because of course it is), and it even has an experimental antenna that should be able to track the keys if you can boost its signal strength high enough; there’s a little meter that indicates the antenna’s signal strength by displaying 0-50 stars.

Your instincts tell you that in order to save Christmas, you’ll need to get all fifty stars by December 25th.

Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar. Each puzzle grants one star. Good luck!

Advent Of Code 2021 (Eric Wastl)

Advent of Code timeline: 2020 2021

You are currently not able to subscribe to this course.

Exercise series

Day 01: sonar sweep - part one

Title Class progress
Sonar sweep - 1 (c)
Sonar sweep - 1 (haskell)
Sonar sweep - 1 (java)
Sonar sweep - 1 (javascript)
Sonar sweep - 1 (kotlin)
Sonar sweep - 1 (python)

Day 01: sonar sweep - part two

Title Class progress
Sonar sweep - 2 (c)
Sonar sweep - 2 (haskell)
Sonar sweep - 2 (java)
Sonar sweep - 2 (javascript)
Sonar sweep - 2 (kotlin)
Sonar sweep - 2 (python)
Title Class progress Status
Dive! - 1 (c)
Dive! - 1 (haskell)
Dive! - 1 (java)
Dive! - 1 (javascript)
Dive! - 1 (kotlin)
Dive! - 1 (python)
Title Class progress Status
Dive! - 2 (c)
Dive! - 2 (haskell)
Dive! - 2 (java)
Dive! - 2 (javascript)
Dive! - 2 (kotlin)
Dive! - 2 (python)

Day 03: binary diagnostic - part one

Title Class progress Status
Binary diagnostic - 1 (c)
Binary diagnostic - 1 (haskell)
Binary diagnostic - 1 (java)
Binary diagnostic - 1 (javascript)
Binary diagnostic - 1 (kotlin)
Binary diagnostic - 1 (python)

Day 03: binary diagnostic - part two

Title Class progress Status
Binary diagnostic - 2 (c)
Binary diagnostic - 2 (haskell)
Binary diagnostic - 2 (java)
Binary diagnostic - 2 (javascript)
Binary diagnostic - 2 (kotlin)
Binary diagnostic - 2 (python)

Day 04: giant squid - part one

Title Class progress Status
Giant squid - 1 (c)
Giant squid - 1 (haskell)
Giant squid - 1 (java)
Giant squid - 1 (javascript)
Giant squid - 1 (kotlin)
Giant squid - 1 (python)

Day 04: giant squid - part two

Title Class progress Status
Giant squid - 2 (c)
Giant squid - 2 (haskell)
Giant squid - 2 (java)
Giant squid - 2 (javascript)
Giant squid - 2 (kotlin)
Giant squid - 2 (python)

Day 05: hydrothermal venture - part one

Title Class progress Status
Hydrothermal venture - 1 (c)
Hydrothermal venture - 1 (haskell)
Hydrothermal venture - 1 (java)
Hydrothermal venture - 1 (javascript)
Hydrothermal venture - 1 (kotlin)
Hydrothermal venture - 1 (python)

Day 05: hydrothermal venture - part two

Title Class progress Status
Hydrothermal venture - 2 (c)
Hydrothermal venture - 2 (haskell)
Hydrothermal venture - 2 (java)
Hydrothermal venture - 2 (javascript)
Hydrothermal venture - 2 (kotlin)
Hydrothermal venture - 2 (python)

Day 06: lanternfish - part one

Title Class progress Status
Lanternfish - 1 (c)
Lanternfish - 1 (haskell)
Lanternfish - 1 (java)
Lanternfish - 1 (javascript)
Lanternfish - 1 (kotlin)
Lanternfish - 1 (python)

Day 06: lanternfish - part two

Title Class progress Status
Lanternfish - 2 (c)
Lanternfish - 2 (haskell)
Lanternfish - 2 (java)
Lanternfish - 2 (javascript)
Lanternfish - 2 (kotlin)
Lanternfish - 2 (python)

Day 07: the treachery of the whales - part one

Title Class progress Status
The treachery of the whales - 1 (c)
The treachery of the whales - 1 (haskell)
The treachery of the whales - 1 (java)
The treachery of the whales - 1 (javascript)
The treachery of the whales - 1 (kotlin)
The treachery of the whales - 1 (python)

Day 07: the treachery of the whales - part two

Title Class progress Status
The treachery of the whales - 2 (c)
The treachery of the whales - 2 (haskell)
The treachery of the whales - 2 (java)
The treachery of the whales - 2 (javascript)
The treachery of the whales - 2 (kotlin)
The treachery of the whales - 2 (python)

Day 08: seven segment search - part one

Title Class progress Status
Seven segment search - 1 (c)
Seven segment search - 1 (haskell)
Seven segment search - 1 (java)
Seven segment search - 1 (javascript)
Seven segment search - 1 (kotlin)
Seven segment search - 1 (python)

Day 08: seven segment search - part two

Title Class progress Status
Seven segment search - 2 (c)
Seven segment search - 2 (haskell)
Seven segment search - 2 (java)
Seven segment search - 2 (javascript)
Seven segment search - 2 (kotlin)
Seven segment search - 2 (python)

Day 09: smoke basin - part one

Title Class progress Status
Smoke basin - 1 (c)
Smoke basin - 1 (haskell)
Smoke basin - 1 (java)
Smoke basin - 1 (javascript)
Smoke basin - 1 (kotlin)
Smoke basin - 1 (python)

Day 09: smoke basin - part two

Title Class progress Status
Smoke basin - 2 (c)
Smoke basin - 2 (haskell)
Smoke basin - 2 (java)
Smoke basin - 2 (javascript)
Smoke basin - 2 (kotlin)
Smoke basin - 2 (python)

Day 10: syntax scoring - part one

Title Class progress Status
Syntax scoring - 1 (c)
Syntax scoring - 1 (haskell)
Syntax scoring - 1 (java)
Syntax scoring - 1 (javascript)
Syntax scoring - 1 (kotlin)
Syntax scoring - 1 (python)

Day 10: syntax scoring - part two

Title Class progress Status
Syntax scoring - 2 (c)
Syntax scoring - 2 (haskell)
Syntax scoring - 2 (java)
Syntax scoring - 2 (javascript)
Syntax scoring - 2 (kotlin)
Syntax scoring - 2 (python)

Day 11: dumbo octopus - part one

Title Class progress Status
Dumbo octopus - 1 (c)
Dumbo octopus - 1 (haskell)
Dumbo octopus - 1 (java)
Dumbo octopus - 1 (javascript)
Dumbo octopus - 1 (kotlin)
Dumbo octopus - 1 (python)

Day 11: dumbo octopus - part two

Title Class progress Status
Dumbo octopus - 2 (c)
Dumbo octopus - 2 (haskell)
Dumbo octopus - 2 (java)
Dumbo octopus - 2 (javascript)
Dumbo octopus - 2 (kotlin)
Dumbo octopus - 2 (python)

Day 12: passage pathing - part one

Title Class progress Status
Passage pathing - 1 (c)
Passage pathing - 1 (haskell)
Passage pathing - 1 (java)
Passage pathing - 1 (javascript)
Passage pathing - 1 (kotlin)
Passage pathing - 1 (python)

Day 12: passage pathing - part two

Title Class progress Status
Passage pathing - 2 (c)
Passage pathing - 2 (haskell)
Passage pathing - 2 (java)
Passage pathing - 2 (javascript)
Passage pathing - 2 (kotlin)
Passage pathing - 2 (python)

Day 13: transparent origami - part one

Title Class progress Status
Transparent origami - 1 (c)
Transparent origami - 1 (haskell)
Transparent origami - 1 (java)
Transparent origami - 1 (javascript)
Transparent origami - 1 (kotlin)
Transparent origami - 1 (python)

Day 13: transparent origami - part two

Title Class progress Status
Transparent origami - 2 (c)
Transparent origami - 2 (haskell)
Transparent origami - 2 (java)
Transparent origami - 2 (javascript)
Transparent origami - 2 (kotlin)
Transparent origami - 2 (python)

Day 14: extended polymerization - part one

Title Class progress Status
Extended polymerization - 1 (c)
Extended polymerization - 1 (haskell)
Extended polymerization - 1 (java)
Extended polymerization - 1 (javascript)
Extended polymerization - 1 (kotlin)
Extended polymerization - 1 (python)

Day 14: extended polymerization - part two

Title Class progress Status
Extended polymerization - 2 (c)
Extended polymerization - 2 (haskell)
Extended polymerization - 2 (java)
Extended polymerization - 2 (javascript)
Extended polymerization - 2 (kotlin)
Extended polymerization - 2 (python)
Title Class progress Status
Chiton - 1 (c)
Chiton - 1 (haskell)
Chiton - 1 (java)
Chiton - 1 (javascript)
Chiton - 1 (kotlin)
Chiton - 1 (python)
Title Class progress Status
Chiton - 2 (c)
Chiton - 2 (haskell)
Chiton - 2 (java)
Chiton - 2 (javascript)
Chiton - 2 (kotlin)
Chiton - 2 (python)

Day 16: packet decoder - part one

Title Class progress Status
Packet decoder - 1 (c)
Packet decoder - 1 (haskell)
Packet decoder - 1 (java)
Packet decoder - 1 (javascript)
Packet decoder - 1 (kotlin)
Packet decoder - 1 (python)

Day 16: packet decoder - part two

Title Class progress Status
Packet decoder - 2 (c)
Packet decoder - 2 (haskell)
Packet decoder - 2 (java)
Packet decoder - 2 (javascript)
Packet decoder - 2 (kotlin)
Packet decoder - 2 (python)

Day 17: trick shot - part one

Title Class progress Status
Trick shot - 1 (c)
Trick shot - 1 (haskell)
Trick shot - 1 (java)
Trick shot - 1 (javascript)
Trick shot - 1 (kotlin)
Trick shot - 1 (python)

Day 17: trick shot - part two

Title Class progress Status
Trick shot - 2 (c)
Trick shot - 2 (haskell)
Trick shot - 2 (java)
Trick shot - 2 (javascript)
Trick shot - 2 (kotlin)
Trick shot - 2 (python)