{"id":16870424,"url":"https://github.com/narimiran/advent_of_code_2016","last_synced_at":"2025-08-25T02:02:28.515Z","repository":{"id":115374726,"uuid":"75310230","full_name":"narimiran/advent_of_code_2016","owner":"narimiran","description":"My solutions for Advent of Code 2016","archived":false,"fork":false,"pushed_at":"2024-11-29T17:51:17.000Z","size":358,"stargazers_count":5,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-11T23:15:28.544Z","etag":null,"topics":["advent","advent-of-code","advent-of-code-2016","adventofcode","adventofcode2016","puzzle","puzzles","python","python3"],"latest_commit_sha":null,"homepage":null,"language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/narimiran.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-12-01T16:17:53.000Z","updated_at":"2024-11-29T17:51:20.000Z","dependencies_parsed_at":"2023-11-26T09:22:10.622Z","dependency_job_id":"44f6374d-e67d-4a4a-9fed-4f634c0cecb6","html_url":"https://github.com/narimiran/advent_of_code_2016","commit_stats":{"total_commits":93,"total_committers":3,"mean_commits":31.0,"dds":0.5698924731182795,"last_synced_commit":"80dde9d370108e011eef746190a2554d3d99145a"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/narimiran/advent_of_code_2016","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narimiran%2Fadvent_of_code_2016","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narimiran%2Fadvent_of_code_2016/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narimiran%2Fadvent_of_code_2016/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narimiran%2Fadvent_of_code_2016/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/narimiran","download_url":"https://codeload.github.com/narimiran/advent_of_code_2016/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/narimiran%2Fadvent_of_code_2016/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259689272,"owners_count":22896569,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["advent","advent-of-code","advent-of-code-2016","adventofcode","adventofcode2016","puzzle","puzzles","python","python3"],"created_at":"2024-10-13T15:04:18.627Z","updated_at":"2025-06-13T17:36:27.450Z","avatar_url":"https://github.com/narimiran.png","language":"Clojure","readme":"# Advent of Code 2016\n\nAll my Advent of Code repos:\n\n* [AoC 2015 in Nim, Python](https://github.com/narimiran/advent_of_code_2015)\n* [AoC 2016 in Python, Clojure (+ visualizations)](https://github.com/narimiran/advent_of_code_2016) (this repo)\n* [AoC 2017 in Nim, OCaml, Python](https://github.com/narimiran/AdventOfCode2017)\n* [AoC 2018 in Nim, Python, Racket](https://github.com/narimiran/AdventOfCode2018)\n* [AoC 2019 in OCaml, Python](https://github.com/narimiran/AdventOfCode2019)\n* [AoC 2020 in Nim, one liner-y Python, Racket](https://github.com/narimiran/AdventOfCode2020)\n* [AoC 2021 in Python, Racket](https://github.com/narimiran/AdventOfCode2021)\n* [AoC 2022 in Python, Clojure](https://github.com/narimiran/AdventOfCode2022)\n* [AoC 2023 in Clojure](https://github.com/narimiran/AdventOfCode2023)\n* [AoC 2024 in Clojure (Clerk notebooks)](https://github.com/narimiran/aoc2024)\n\n\n\u0026nbsp;\n\n\n## Solutions\n\nFirst ten puzzles were solved as they were published, then came the infamous [Dec 11 task](http://adventofcode.com/2016/day/11), which crushed my hopes and motivation.  \nAfter some desperation, I've managed to solve first 20 puzzles before Christmas, then took a long break and finished all challenges on March 19th 2017.\n\nComments, suggestions and critiques are welcome.\n\n\n\u0026nbsp;\n\n\n2023 update:\n- I solved several tasks in Clojure in November 2023, as a preparation for AoC 2023.\n- I also did some visualizations. See below for gifs.\n\n\n\u0026nbsp;\n\n\nTask                                                                                  | Python                                                             | Clojure\n---                                                                                   | ---                                                                | ---\n[Dec 01: No Time for a Taxicab](http://adventofcode.com/2016/day/1)                   | [day_01.py](python/day_01.py)                                      | [day01.clj](clojure/day01.clj), [day01_viz.clj](clojure/day01_viz.clj)\n[Dec 02: Bathroom Security](http://adventofcode.com/2016/day/2)                       | [day_02.py](python/day_02.py)                                      | [day02.clj](clojure/day02.clj), [day02_viz.clj](clojure/day02_viz.clj)\n[Dec 03: Squares With Three Sides](http://adventofcode.com/2016/day/3)                | [day_03.py](python/day_03.py), [numpy](python/day_03_numpy.py)     | [day03.clj](clojure/day03.clj)\n[Dec 04: Security Through Obscurity](http://adventofcode.com/2016/day/4)              | [day_04.py](python/day_04.py)                                      | [day04.clj](clojure/day04.clj)\n[Dec 05: How About a Nice Game of Chess](http://adventofcode.com/2016/day/5)          | [day_05.py](python/day_05.py)                                      |\n[Dec 06: Signals and Noise](http://adventofcode.com/2016/day/6)                       | [day_06.py](python/day_06.py)                                      | [day06.clj](clojure/day06.clj)\n[Dec 07: Internet Protocol Version 7](http://adventofcode.com/2016/day/7)             | [day_07.py](python/day_07.py)                                      | [day07.clj](clojure/day07.clj)\n[Dec 08: Two-Factor Authentication](http://adventofcode.com/2016/day/8)               | [day_08.py](python/day_08.py)                                      | [day08.clj](clojure/day08.clj), [day08_viz.clj](clojure/day08_viz.clj)\n[Dec 09: Explosives in Cyberspace](http://adventofcode.com/2016/day/9)                | [day_09.py](python/day_09.py)                                      | [day09.clj](clojure/day09.clj)\n[Dec 10: Balance Bots](http://adventofcode.com/2016/day/10)                           | [day_10.py](python/day_10.py)                                      | [day10.clj](clojure/day10.clj)\n[Dec 11: Radioisotope Thermoelectric Generators](http://adventofcode.com/2016/day/11) | [day_11.py](python/day_11.py)                                      |\n[Dec 12: Leonardo's Monorail](http://adventofcode.com/2016/day/12)                    | [day_12.py](python/day_12.py), [literal](python/day_12_literal.py) | [day12.clj](clojure/day12.clj), [day12_viz.clj](clojure/day12_viz.clj)\n[Dec 13: A Maze of Twisty Little Cubicles](http://adventofcode.com/2016/day/13)       | [day_13.py](python/day_13.py)                                      | [day13.clj](clojure/day13.clj), [day13_viz.clj](clojure/day13_viz.clj)\n[Dec 14: One-Time Pad](http://adventofcode.com/2016/day/14)                           | [day_14.py](python/day_14.py)                                      |\n[Dec 15: Timing is Everything](http://adventofcode.com/2016/day/15)                   | [day_15.py](python/day_15.py)                                      | [day15.clj](clojure/day15.clj), [day15_viz.clj](clojure/day15_viz.clj)\n[Dec 16: Dragon Checksum](http://adventofcode.com/2016/day/16)                        | [day_16.py](python/day_16.py)                                      |\n[Dec 17: Two Steps Forward](http://adventofcode.com/2016/day/17)                      | [day_17.py](python/day_17.py)                                      |\n[Dec 18: Like a Rogue](http://adventofcode.com/2016/day/18)                           | [day_18.py](python/day_18.py)                                      | [day18.clj](clojure/day18.clj)\n[Dec 19: An Elephant Named Joseph](http://adventofcode.com/2016/day/19)               | [day_19.py](python/day_19.py)                                      |\n[Dec 20: Firewall Rules](http://adventofcode.com/2016/day/20)                         | [day_20.py](python/day_20.py)                                      | [day20.clj](clojure/day20.clj)\n[Dec 21: Scrambled Letters and Hash](http://adventofcode.com/2016/day/21)             | [day_21.py](python/day_21.py)                                      |\n[Dec 22: Grid Computing](http://adventofcode.com/2016/day/22)                         | [day_22.py](python/day_22.py)                                      |\n[Dec 23: Safe Cracking](http://adventofcode.com/2016/day/23)                          | [day_23.py](python/day_23.py), [literal](python/day_23_literal.py) | [day23.clj](clojure/day23.clj)\n[Dec 24: Air Duct Spelunking](http://adventofcode.com/2016/day/24)                    | [day_24.py](python/day_24.py)                                      |\n[Dec 25: Clock Signal](http://adventofcode.com/2016/day/25)                           | [day_25.py](python/day_25.py)                                      | [day25.clj](clojure/day25.clj), [day25_viz.clj](clojure/day25_viz.clj)\n\n\n\u0026nbsp;\n\n\n## Visualizations\n\nVisualizations were done in Clojure, using `quil` library, and then converted to gif via ImageMagick.\n\n\n### Day 1\n\n![day01.gif](https://i.imgur.com/xT8mdWS.gif)\n\nSource: [day01_viz.clj](clojure/day01_viz.clj)\n\n\n\n### Day 2\n\n![day02.gif](https://i.imgur.com/qkWz2zR.gif)\n\nSource: [day02_viz.clj](clojure/day02_viz.clj)\n\n\n\n### Day 8\n\n![day08.gif](https://i.imgur.com/vERUTsA.gif)\n\nSource: [day08_viz.clj](clojure/day08_viz.clj)\n\n\n\n### Day 12\n\n\n![day12.gif](https://i.imgur.com/l1aZp4S.gif)\n\nSource: [day12_viz.clj](clojure/day12_viz.clj)\n\n\n\n### Day 13\n\n![day13.gif](https://i.imgur.com/Qk1n6nv.gif)\n\nSource: [day13_viz.clj](clojure/day13_viz.clj)\n\n\n\n### Day 15\n\n![day15.gif](https://i.imgur.com/SD1zGS0.gif)\n\nSource: [day15_viz.clj](clojure/day15_viz.clj)\n\n\n\n### Day 25\n\n![day25.gif](https://i.imgur.com/YyqbfJn.gif)\n\nSource: [day25_viz.clj](clojure/day25_viz.clj)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnarimiran%2Fadvent_of_code_2016","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnarimiran%2Fadvent_of_code_2016","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnarimiran%2Fadvent_of_code_2016/lists"}