From 16dc52d9f24176d8c67c06588624bf38c6a99372 Mon Sep 17 00:00:00 2001 From: Gabriel Augendre Date: Mon, 2 Mar 2020 22:43:53 +0100 Subject: [PATCH] Solve days 1 and 2 of AoC 2019 --- .python-version | 1 + 2019/day01-fuel.xlsx | Bin 0 -> 19547 bytes 2019/day02-intcode.py | 43 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 .python-version create mode 100644 2019/day01-fuel.xlsx create mode 100644 2019/day02-intcode.py diff --git a/.python-version b/.python-version new file mode 100644 index 0000000..0ac9d0a --- /dev/null +++ b/.python-version @@ -0,0 +1 @@ +advent-of-code diff --git a/2019/day01-fuel.xlsx b/2019/day01-fuel.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..74a9dd5528c0838bcb7885738687657c538f4e1f GIT binary patch literal 19547 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 c4dJ&{hqM?Z$g=