From 4cf318a3608eb3b7a4fb62ead33b859ef9bac86c Mon Sep 17 00:00:00 2001 From: Benjo Date: Wed, 5 Jan 2022 11:03:36 +0100 Subject: [PATCH] tidy --- fill.py | 2 +- pre.cpp | 3 +- pre.h | 10 ++-- src/Day.h | 58 +++++++++++----------- src/days/01/Day01.cpp | 3 +- src/days/01/Day01.h | 10 ++-- src/days/02/Day02.cpp | 1 - src/days/02/Day02.h | 10 ++-- src/days/03/Day03.cpp | 1 - src/days/03/Day03.h | 10 ++-- src/days/04/Day04.cpp | 3 +- src/days/04/Day04.h | 10 ++-- src/days/05/Day05.cpp | 3 +- src/days/05/Day05.h | 10 ++-- src/days/06/Day06.cpp | 3 +- src/days/06/Day06.h | 10 ++-- src/days/07/Day07.cpp | 3 +- src/days/07/Day07.h | 10 ++-- src/days/08/Day08.cpp | 3 +- src/days/08/Day08.h | 10 ++-- src/days/09/Day09.cpp | 3 +- src/days/09/Day09.h | 10 ++-- src/days/10/Day10.cpp | 3 +- src/days/10/Day10.h | 10 ++-- src/days/11/Day11.cpp | 3 +- src/days/11/Day11.h | 10 ++-- src/days/12/Day12.cpp | 3 +- src/days/12/Day12.h | 10 ++-- src/days/13/Day13.cpp | 3 +- src/days/13/Day13.h | 10 ++-- src/days/14/Day14.cpp | 3 +- src/days/14/Day14.h | 10 ++-- src/days/15/Day15.cpp | 3 +- src/days/15/Day15.h | 10 ++-- src/days/16/Day16.cpp | 3 +- src/days/16/Day16.h | 10 ++-- src/days/17/Day17.cpp | 3 +- src/days/17/Day17.h | 10 ++-- src/days/18/Day18.cpp | 3 +- src/days/18/Day18.h | 10 ++-- src/days/19/Day19.cpp | 3 +- src/days/19/Day19.h | 10 ++-- src/days/20/Day20.cpp | 3 +- src/days/20/Day20.h | 10 ++-- src/days/21/Day21.cpp | 3 +- src/days/21/Day21.h | 10 ++-- src/days/22/Day22.cpp | 3 +- src/days/22/Day22.h | 10 ++-- src/days/23/Day23.cpp | 3 +- src/days/23/Day23.h | 10 ++-- src/days/24/Day24.cpp | 3 +- src/days/24/Day24.h | 10 ++-- src/days/25/Day25.cpp | 3 +- src/days/25/Day25.h | 10 ++-- src/days/days.h | 64 +++++++++++------------- src/main.cpp | 112 +++++++++++++++++++++--------------------- src/util.h | 5 +- 57 files changed, 218 insertions(+), 357 deletions(-) diff --git a/fill.py b/fill.py index a30d658..6af47bf 100644 --- a/fill.py +++ b/fill.py @@ -10,7 +10,7 @@ for dayNum in range(1, 26): try: os.mkdir(dirName) except OSError: - continue + pass with open(f"{dirName}/Day{pad}.h", "w") as file: file.write(preH.replace("XX", pad)) with open(f"{dirName}/Day{pad}.cpp", "w") as file: diff --git a/pre.cpp b/pre.cpp index 9ab60a3..d1870cb 100644 --- a/pre.cpp +++ b/pre.cpp @@ -1,4 +1,3 @@ - #include "DayXX.h" Result DayXX::Task1() { @@ -7,4 +6,4 @@ Result DayXX::Task1() { Result DayXX::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/pre.h b/pre.h index afa0ca7..afaf745 100644 --- a/pre.h +++ b/pre.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAYXX_H -#define ADVENTOFCODE2022_DAYXX_H +#pragma once #include "../../Day.h" class DayXX : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/Day.h b/src/Day.h index 4e09fc5..a7f2a71 100644 --- a/src/Day.h +++ b/src/Day.h @@ -1,5 +1,4 @@ -#ifndef ADVENTOFCODE2022_DAY_H -#define ADVENTOFCODE2022_DAY_H +#pragma once #include #include "util.h" @@ -10,31 +9,32 @@ typedef std::vector Input; class Day { protected: - Input input; - virtual Result Task1() { return ""; } - virtual Result Task2() { return ""; } + Input input; + + virtual Result Task1() { return ""; } + + virtual Result Task2() { return ""; } + public: - int run(Input &_input) { - input = _input; - - auto start = high_resolution_clock::now(); - - std::cout << "Task 1" << std::endl; - Result result1 = Task1(); - auto stop1 = high_resolution_clock::now(); - auto dur1 = duration_cast(stop1 - start); - std::cout << "Result: " << result1 << std::endl; - std::cout << "Duration: " << dur1.count() << "ms" << std::endl; - - std::cout << "Task 2" << std::endl; - Result result2 = Task2(); - auto stop2 = high_resolution_clock::now(); - auto dur2 = duration_cast(stop2 - stop1); - std::cout << "Result: " << result2 << std::endl; - std::cout << "Duration: " << dur2.count() << "ms" << std::endl << std::endl; - - return 0; - } -}; - -#endif + int run(Input &_input) { + input = _input; + + auto start = high_resolution_clock::now(); + + std::cout << "Task 1" << std::endl; + Result result1 = Task1(); + auto stop1 = high_resolution_clock::now(); + auto dur1 = duration_cast(stop1 - start); + std::cout << "Result: " << result1 << std::endl; + std::cout << "Duration: " << dur1.count() << "ms" << std::endl; + + std::cout << "Task 2" << std::endl; + Result result2 = Task2(); + auto stop2 = high_resolution_clock::now(); + auto dur2 = duration_cast(stop2 - stop1); + std::cout << "Result: " << result2 << std::endl; + std::cout << "Duration: " << dur2.count() << "ms" << std::endl << std::endl; + + return 0; + } +}; \ No newline at end of file diff --git a/src/days/01/Day01.cpp b/src/days/01/Day01.cpp index 2396367..09d9f9c 100644 --- a/src/days/01/Day01.cpp +++ b/src/days/01/Day01.cpp @@ -1,4 +1,3 @@ - #include "Day01.h" Result Day01::Task1() { @@ -7,4 +6,4 @@ Result Day01::Task1() { Result Day01::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/01/Day01.h b/src/days/01/Day01.h index 2e7a501..2b72458 100644 --- a/src/days/01/Day01.h +++ b/src/days/01/Day01.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY01_H -#define ADVENTOFCODE2022_DAY01_H +#pragma once #include "../../Day.h" class Day01 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/02/Day02.cpp b/src/days/02/Day02.cpp index 0ffdc82..f88eb65 100644 --- a/src/days/02/Day02.cpp +++ b/src/days/02/Day02.cpp @@ -1,4 +1,3 @@ - #include "Day02.h" Result Day02::Task1() { diff --git a/src/days/02/Day02.h b/src/days/02/Day02.h index 159153f..e6a2124 100644 --- a/src/days/02/Day02.h +++ b/src/days/02/Day02.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY02_H -#define ADVENTOFCODE2022_DAY02_H +#pragma once #include "../../Day.h" class Day02 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/03/Day03.cpp b/src/days/03/Day03.cpp index 498810d..dad3568 100644 --- a/src/days/03/Day03.cpp +++ b/src/days/03/Day03.cpp @@ -1,4 +1,3 @@ - #include "Day03.h" Result Day03::Task1() { diff --git a/src/days/03/Day03.h b/src/days/03/Day03.h index fd1dbe8..0ff555a 100644 --- a/src/days/03/Day03.h +++ b/src/days/03/Day03.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY03_H -#define ADVENTOFCODE2022_DAY03_H +#pragma once #include "../../Day.h" class Day03 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/04/Day04.cpp b/src/days/04/Day04.cpp index 97eabaa..72beed7 100644 --- a/src/days/04/Day04.cpp +++ b/src/days/04/Day04.cpp @@ -1,4 +1,3 @@ - #include "Day04.h" Result Day04::Task1() { @@ -7,4 +6,4 @@ Result Day04::Task1() { Result Day04::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/04/Day04.h b/src/days/04/Day04.h index 01654b6..8084bcf 100644 --- a/src/days/04/Day04.h +++ b/src/days/04/Day04.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY04_H -#define ADVENTOFCODE2022_DAY04_H +#pragma once #include "../../Day.h" class Day04 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/05/Day05.cpp b/src/days/05/Day05.cpp index 9f12e14..34bffac 100644 --- a/src/days/05/Day05.cpp +++ b/src/days/05/Day05.cpp @@ -1,4 +1,3 @@ - #include "Day05.h" Result Day05::Task1() { @@ -7,4 +6,4 @@ Result Day05::Task1() { Result Day05::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/05/Day05.h b/src/days/05/Day05.h index f46acb9..128dacd 100644 --- a/src/days/05/Day05.h +++ b/src/days/05/Day05.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY05_H -#define ADVENTOFCODE2022_DAY05_H +#pragma once #include "../../Day.h" class Day05 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/06/Day06.cpp b/src/days/06/Day06.cpp index a92a1e6..256bfb5 100644 --- a/src/days/06/Day06.cpp +++ b/src/days/06/Day06.cpp @@ -1,4 +1,3 @@ - #include "Day06.h" Result Day06::Task1() { @@ -7,4 +6,4 @@ Result Day06::Task1() { Result Day06::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/06/Day06.h b/src/days/06/Day06.h index a55ee7e..829fca9 100644 --- a/src/days/06/Day06.h +++ b/src/days/06/Day06.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY06_H -#define ADVENTOFCODE2022_DAY06_H +#pragma once #include "../../Day.h" class Day06 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/07/Day07.cpp b/src/days/07/Day07.cpp index 59955bb..339ae0f 100644 --- a/src/days/07/Day07.cpp +++ b/src/days/07/Day07.cpp @@ -1,4 +1,3 @@ - #include "Day07.h" Result Day07::Task1() { @@ -7,4 +6,4 @@ Result Day07::Task1() { Result Day07::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/07/Day07.h b/src/days/07/Day07.h index 723dd62..4cbc911 100644 --- a/src/days/07/Day07.h +++ b/src/days/07/Day07.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY07_H -#define ADVENTOFCODE2022_DAY07_H +#pragma once #include "../../Day.h" class Day07 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/08/Day08.cpp b/src/days/08/Day08.cpp index c3222c2..2cef7b6 100644 --- a/src/days/08/Day08.cpp +++ b/src/days/08/Day08.cpp @@ -1,4 +1,3 @@ - #include "Day08.h" Result Day08::Task1() { @@ -7,4 +6,4 @@ Result Day08::Task1() { Result Day08::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/08/Day08.h b/src/days/08/Day08.h index 7104156..f4712e7 100644 --- a/src/days/08/Day08.h +++ b/src/days/08/Day08.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY08_H -#define ADVENTOFCODE2022_DAY08_H +#pragma once #include "../../Day.h" class Day08 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/09/Day09.cpp b/src/days/09/Day09.cpp index ccd0f65..4eb2146 100644 --- a/src/days/09/Day09.cpp +++ b/src/days/09/Day09.cpp @@ -1,4 +1,3 @@ - #include "Day09.h" Result Day09::Task1() { @@ -7,4 +6,4 @@ Result Day09::Task1() { Result Day09::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/09/Day09.h b/src/days/09/Day09.h index 2c7989c..c73088e 100644 --- a/src/days/09/Day09.h +++ b/src/days/09/Day09.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY09_H -#define ADVENTOFCODE2022_DAY09_H +#pragma once #include "../../Day.h" class Day09 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/10/Day10.cpp b/src/days/10/Day10.cpp index 77f588c..cae811b 100644 --- a/src/days/10/Day10.cpp +++ b/src/days/10/Day10.cpp @@ -1,4 +1,3 @@ - #include "Day10.h" Result Day10::Task1() { @@ -7,4 +6,4 @@ Result Day10::Task1() { Result Day10::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/10/Day10.h b/src/days/10/Day10.h index 5c7f65d..e263a56 100644 --- a/src/days/10/Day10.h +++ b/src/days/10/Day10.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY10_H -#define ADVENTOFCODE2022_DAY10_H +#pragma once #include "../../Day.h" class Day10 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/11/Day11.cpp b/src/days/11/Day11.cpp index fa0b845..6cb34b6 100644 --- a/src/days/11/Day11.cpp +++ b/src/days/11/Day11.cpp @@ -1,4 +1,3 @@ - #include "Day11.h" Result Day11::Task1() { @@ -7,4 +6,4 @@ Result Day11::Task1() { Result Day11::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/11/Day11.h b/src/days/11/Day11.h index 8065af1..2883f1a 100644 --- a/src/days/11/Day11.h +++ b/src/days/11/Day11.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY11_H -#define ADVENTOFCODE2022_DAY11_H +#pragma once #include "../../Day.h" class Day11 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/12/Day12.cpp b/src/days/12/Day12.cpp index 614e0fe..e3cc2c4 100644 --- a/src/days/12/Day12.cpp +++ b/src/days/12/Day12.cpp @@ -1,4 +1,3 @@ - #include "Day12.h" Result Day12::Task1() { @@ -7,4 +6,4 @@ Result Day12::Task1() { Result Day12::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/12/Day12.h b/src/days/12/Day12.h index ffceb87..b713fc4 100644 --- a/src/days/12/Day12.h +++ b/src/days/12/Day12.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY12_H -#define ADVENTOFCODE2022_DAY12_H +#pragma once #include "../../Day.h" class Day12 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/13/Day13.cpp b/src/days/13/Day13.cpp index c642d2a..619e886 100644 --- a/src/days/13/Day13.cpp +++ b/src/days/13/Day13.cpp @@ -1,4 +1,3 @@ - #include "Day13.h" Result Day13::Task1() { @@ -7,4 +6,4 @@ Result Day13::Task1() { Result Day13::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/13/Day13.h b/src/days/13/Day13.h index 2e1e276..eac7676 100644 --- a/src/days/13/Day13.h +++ b/src/days/13/Day13.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY13_H -#define ADVENTOFCODE2022_DAY13_H +#pragma once #include "../../Day.h" class Day13 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/14/Day14.cpp b/src/days/14/Day14.cpp index 93be9e9..4b2001d 100644 --- a/src/days/14/Day14.cpp +++ b/src/days/14/Day14.cpp @@ -1,4 +1,3 @@ - #include "Day14.h" Result Day14::Task1() { @@ -7,4 +6,4 @@ Result Day14::Task1() { Result Day14::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/14/Day14.h b/src/days/14/Day14.h index cf944c1..e7af034 100644 --- a/src/days/14/Day14.h +++ b/src/days/14/Day14.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY14_H -#define ADVENTOFCODE2022_DAY14_H +#pragma once #include "../../Day.h" class Day14 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/15/Day15.cpp b/src/days/15/Day15.cpp index 3a7b5fe..b94014d 100644 --- a/src/days/15/Day15.cpp +++ b/src/days/15/Day15.cpp @@ -1,4 +1,3 @@ - #include "Day15.h" Result Day15::Task1() { @@ -7,4 +6,4 @@ Result Day15::Task1() { Result Day15::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/15/Day15.h b/src/days/15/Day15.h index f9e97d0..e526cb1 100644 --- a/src/days/15/Day15.h +++ b/src/days/15/Day15.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY15_H -#define ADVENTOFCODE2022_DAY15_H +#pragma once #include "../../Day.h" class Day15 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/16/Day16.cpp b/src/days/16/Day16.cpp index b88086c..ac4e8a2 100644 --- a/src/days/16/Day16.cpp +++ b/src/days/16/Day16.cpp @@ -1,4 +1,3 @@ - #include "Day16.h" Result Day16::Task1() { @@ -7,4 +6,4 @@ Result Day16::Task1() { Result Day16::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/16/Day16.h b/src/days/16/Day16.h index ecf4f9b..7d47781 100644 --- a/src/days/16/Day16.h +++ b/src/days/16/Day16.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY16_H -#define ADVENTOFCODE2022_DAY16_H +#pragma once #include "../../Day.h" class Day16 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/17/Day17.cpp b/src/days/17/Day17.cpp index e944046..d97c359 100644 --- a/src/days/17/Day17.cpp +++ b/src/days/17/Day17.cpp @@ -1,4 +1,3 @@ - #include "Day17.h" Result Day17::Task1() { @@ -7,4 +6,4 @@ Result Day17::Task1() { Result Day17::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/17/Day17.h b/src/days/17/Day17.h index ea1dc4b..984c4ba 100644 --- a/src/days/17/Day17.h +++ b/src/days/17/Day17.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY17_H -#define ADVENTOFCODE2022_DAY17_H +#pragma once #include "../../Day.h" class Day17 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/18/Day18.cpp b/src/days/18/Day18.cpp index d3fe490..0a70982 100644 --- a/src/days/18/Day18.cpp +++ b/src/days/18/Day18.cpp @@ -1,4 +1,3 @@ - #include "Day18.h" Result Day18::Task1() { @@ -7,4 +6,4 @@ Result Day18::Task1() { Result Day18::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/18/Day18.h b/src/days/18/Day18.h index 997c8e3..0a7c622 100644 --- a/src/days/18/Day18.h +++ b/src/days/18/Day18.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY18_H -#define ADVENTOFCODE2022_DAY18_H +#pragma once #include "../../Day.h" class Day18 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/19/Day19.cpp b/src/days/19/Day19.cpp index 9a21fc2..2130551 100644 --- a/src/days/19/Day19.cpp +++ b/src/days/19/Day19.cpp @@ -1,4 +1,3 @@ - #include "Day19.h" Result Day19::Task1() { @@ -7,4 +6,4 @@ Result Day19::Task1() { Result Day19::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/19/Day19.h b/src/days/19/Day19.h index 279448f..8bd9d57 100644 --- a/src/days/19/Day19.h +++ b/src/days/19/Day19.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY19_H -#define ADVENTOFCODE2022_DAY19_H +#pragma once #include "../../Day.h" class Day19 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/20/Day20.cpp b/src/days/20/Day20.cpp index 01ab365..61da045 100644 --- a/src/days/20/Day20.cpp +++ b/src/days/20/Day20.cpp @@ -1,4 +1,3 @@ - #include "Day20.h" Result Day20::Task1() { @@ -7,4 +6,4 @@ Result Day20::Task1() { Result Day20::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/20/Day20.h b/src/days/20/Day20.h index bbabff5..3b1d87f 100644 --- a/src/days/20/Day20.h +++ b/src/days/20/Day20.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY20_H -#define ADVENTOFCODE2022_DAY20_H +#pragma once #include "../../Day.h" class Day20 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/21/Day21.cpp b/src/days/21/Day21.cpp index f13a97c..2a70ddb 100644 --- a/src/days/21/Day21.cpp +++ b/src/days/21/Day21.cpp @@ -1,4 +1,3 @@ - #include "Day21.h" Result Day21::Task1() { @@ -7,4 +6,4 @@ Result Day21::Task1() { Result Day21::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/21/Day21.h b/src/days/21/Day21.h index 7ace0ae..0635da0 100644 --- a/src/days/21/Day21.h +++ b/src/days/21/Day21.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY21_H -#define ADVENTOFCODE2022_DAY21_H +#pragma once #include "../../Day.h" class Day21 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/22/Day22.cpp b/src/days/22/Day22.cpp index 19739d7..6e9b249 100644 --- a/src/days/22/Day22.cpp +++ b/src/days/22/Day22.cpp @@ -1,4 +1,3 @@ - #include "Day22.h" Result Day22::Task1() { @@ -7,4 +6,4 @@ Result Day22::Task1() { Result Day22::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/22/Day22.h b/src/days/22/Day22.h index 3f68030..d7e2b87 100644 --- a/src/days/22/Day22.h +++ b/src/days/22/Day22.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY22_H -#define ADVENTOFCODE2022_DAY22_H +#pragma once #include "../../Day.h" class Day22 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/23/Day23.cpp b/src/days/23/Day23.cpp index 575a5cb..7e048b0 100644 --- a/src/days/23/Day23.cpp +++ b/src/days/23/Day23.cpp @@ -1,4 +1,3 @@ - #include "Day23.h" Result Day23::Task1() { @@ -7,4 +6,4 @@ Result Day23::Task1() { Result Day23::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/23/Day23.h b/src/days/23/Day23.h index 6fcd931..06c4bf8 100644 --- a/src/days/23/Day23.h +++ b/src/days/23/Day23.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY23_H -#define ADVENTOFCODE2022_DAY23_H +#pragma once #include "../../Day.h" class Day23 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/24/Day24.cpp b/src/days/24/Day24.cpp index 657d6c1..fbf2778 100644 --- a/src/days/24/Day24.cpp +++ b/src/days/24/Day24.cpp @@ -1,4 +1,3 @@ - #include "Day24.h" Result Day24::Task1() { @@ -7,4 +6,4 @@ Result Day24::Task1() { Result Day24::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/24/Day24.h b/src/days/24/Day24.h index f6df388..be8afb7 100644 --- a/src/days/24/Day24.h +++ b/src/days/24/Day24.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY24_H -#define ADVENTOFCODE2022_DAY24_H +#pragma once #include "../../Day.h" class Day24 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/25/Day25.cpp b/src/days/25/Day25.cpp index 7221b7a..b461fa5 100644 --- a/src/days/25/Day25.cpp +++ b/src/days/25/Day25.cpp @@ -1,4 +1,3 @@ - #include "Day25.h" Result Day25::Task1() { @@ -7,4 +6,4 @@ Result Day25::Task1() { Result Day25::Task2() { return Day::Task2(); -} +} \ No newline at end of file diff --git a/src/days/25/Day25.h b/src/days/25/Day25.h index 8a2f264..f4277d0 100644 --- a/src/days/25/Day25.h +++ b/src/days/25/Day25.h @@ -1,14 +1,10 @@ - -#ifndef ADVENTOFCODE2022_DAY25_H -#define ADVENTOFCODE2022_DAY25_H +#pragma once #include "../../Day.h" class Day25 : public Day { protected: Result Task1() override; - Result Task2() override; -}; - -#endif + Result Task2() override; +}; \ No newline at end of file diff --git a/src/days/days.h b/src/days/days.h index 6515650..03f3750 100644 --- a/src/days/days.h +++ b/src/days/days.h @@ -1,6 +1,4 @@ - -#ifndef ADVENTOFCODE2022_DAYS_H -#define ADVENTOFCODE2022_DAYS_H +#pragma once #include "01/Day01.h" #include "02/Day02.h" @@ -28,34 +26,32 @@ #include "24/Day24.h" #include "25/Day25.h" -std::vector getAllDays(){ - return { - new Day01(), - new Day02(), - new Day03(), - new Day04(), - new Day05(), - new Day06(), - new Day07(), - new Day08(), - new Day09(), - new Day10(), - new Day11(), - new Day12(), - new Day13(), - new Day14(), - new Day15(), - new Day16(), - new Day17(), - new Day18(), - new Day19(), - new Day20(), - new Day21(), - new Day22(), - new Day23(), - new Day24(), - new Day25() - }; -} - -#endif +std::vector getAllDays() { + return { + new Day01(), + new Day02(), + new Day03(), + new Day04(), + new Day05(), + new Day06(), + new Day07(), + new Day08(), + new Day09(), + new Day10(), + new Day11(), + new Day12(), + new Day13(), + new Day14(), + new Day15(), + new Day16(), + new Day17(), + new Day18(), + new Day19(), + new Day20(), + new Day21(), + new Day22(), + new Day23(), + new Day24(), + new Day25() + }; +} \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index 3f53d3a..88a67e8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -3,66 +3,64 @@ #include "days/days.h" -std::vector getInput(int day, std::string key, bool useTestInput){ - std::vector result; - - char dayStrPadded[3]; - sprintf(dayStrPadded, "%02u", day); - std::string postfix = useTestInput ? "_testInput.txt" : "_input.txt"; - std::string localFilePath = "input/" + std::string(dayStrPadded) + postfix; - - if (!std::filesystem::exists({localFilePath})){ - if (key.empty()) - return result; - std::string dayStr = std::to_string(day); - std::string url = "https://adventofcode.com/2021/day/" + dayStr + "/input"; - std::cout << "Input does not exist. Fetching from " + url << std::endl; - std::ofstream file(localFilePath); - file << cpr::Get(cpr::Url {url}, cpr::Cookies{{"session", key}}).text; - file.close(); - } - - std::ifstream file(localFilePath); - - std::string line; - while (std::getline(file, line)) - result.push_back(line); - - file.close(); - - return result; +std::vector getInput(int day, std::string key, bool useTestInput) { + std::vector result; + + char dayStrPadded[3]; + sprintf(dayStrPadded, "%02u", day); + std::string postfix = useTestInput ? "_testInput.txt" : "_input.txt"; + std::string localFilePath = "input/" + std::string(dayStrPadded) + postfix; + + if (!std::filesystem::exists({localFilePath})) { + if (key.empty()) + return result; + std::string dayStr = std::to_string(day); + std::string url = "https://adventofcode.com/2021/day/" + dayStr + "/input"; + std::cout << "Input does not exist. Fetching from " + url << std::endl; + std::ofstream file(localFilePath); + file << cpr::Get(cpr::Url{url}, cpr::Cookies{{"session", key}}).text; + file.close(); + } + + std::ifstream file(localFilePath); + + std::string line; + while (std::getline(file, line)) + result.push_back(line); + + file.close(); + + return result; } -std::string getSessionKey(){ - std::string key; - std::ifstream file("session"); - if (!file.good()) - return ""; - file >> key; - file.close(); - return key; +std::string getSessionKey() { + std::string key; + std::ifstream file("session"); + if (!file.good()) + return ""; + file >> key; + file.close(); + return key; } int main(int argc, char *argv[]) { - auto key = getSessionKey(); - bool useTestInput = false; - auto days = getAllDays(); - std::filesystem::create_directory("input"); - - for (int i = 1; i < argc; i++){ - int dayNum = std::stoi(argv[i]); - std::cout << "Running day " << dayNum << std::endl; - Input input = getInput(dayNum, key, useTestInput); - Day* day = days[dayNum - 1]; - int code = day->run(input); - if (code != 0) - return code; - } - - days.clear(); - - return 0; -} - - + auto key = getSessionKey(); + bool useTestInput = false; + auto days = getAllDays(); + std::filesystem::create_directory("input"); + + for (int i = 1; i < argc; i++) { + int dayNum = std::stoi(argv[i]); + std::cout << "Running day " << dayNum << std::endl; + Input input = getInput(dayNum, key, useTestInput); + Day *day = days[dayNum - 1]; + int code = day->run(input); + if (code != 0) + return code; + } + + days.clear(); + + return 0; +} \ No newline at end of file diff --git a/src/util.h b/src/util.h index 8cbda41..c776783 100644 --- a/src/util.h +++ b/src/util.h @@ -1,11 +1,8 @@ -#ifndef ADVENTOFCODE2022_UTIL_H -#define ADVENTOFCODE2022_UTIL_H +#pragma once #include #include #include #include #include - -#endif