From 2365681002f9e226445af231290f69cf47d33f49 Mon Sep 17 00:00:00 2001 From: Leif Gehrmann Date: Mon, 26 Dec 2022 18:15:37 +0100 Subject: [PATCH] =?UTF-8?q?Day=2017=20-=20Pyroclastic=20Flow=20?= =?UTF-8?q?=F0=9F=92=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/Day-17.yml | 18 ++++++++++++++++++ src/day_17.data | 1 + src/day_17.rs | 19 +++++++++++++++++++ src/main.rs | 4 ++++ 4 files changed, 42 insertions(+) create mode 100644 .github/workflows/Day-17.yml create mode 100644 src/day_17.data create mode 100644 src/day_17.rs diff --git a/.github/workflows/Day-17.yml b/.github/workflows/Day-17.yml new file mode 100644 index 0000000..fb5bbab --- /dev/null +++ b/.github/workflows/Day-17.yml @@ -0,0 +1,18 @@ +name: Day-17 + +on: + workflow_dispatch: + push: + paths: + - '**17*' + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Build + run: cargo build --release --verbose + - name: Run + run: time target/release/aoc 17 diff --git a/src/day_17.data b/src/day_17.data new file mode 100644 index 0000000..f82ac97 --- /dev/null +++ b/src/day_17.data @@ -0,0 +1 @@ +>>>><<><<<<><<<>>><<<>><>>>><<<>>>><<>>><<<<>>><<<<>><>>><<<<><<<<>>>><<>>><<><<><<<>><>>><<>><<<<>><>>><>>><<<<>>>><<>>><<<>><>>>><<<<>>><<>>><<>>>><<<>>>><<<><>>><<<<>>><>>>><<<>>>><<>>><<<<>><<>><<>>><>>>><<<<>>>><<<<>>>><<><<<>>>><<<>>><>><<<><<>><>>>><<>>>><<>>>><<<>>>><<<<><<<<>>>><>>>><<<>>>><<<><<<<>>><<>><<<>>><<>><<<<>>><>>><>>><<<><><<<<>>>><<>>><<<>>>><<<<>>>><<><<>>><>>><<><>>><<<<>>><<<<>>>><<<<>>><<>><<<<>>>><>><<<>>>><<<<>>><><<><>>>><<<<>>><>>>><<<>>>><<<>>>><<>>><<<<>><<>>>><<<<><<<><<<>>>><<<>>>><>><>>>><<<<>>>><><<>>>><<<>>><<<><>>><<>>><>><<<<>>>><<<><<><<>><>><<>>>><<<>>><<<<>>><<<>>><<>>>><<<><<<>>>><>>><><><<<<>>><<><<<>>>><<<<>>>><<<>>>><><<<<>><<<<>>><<<>><<<><>>><<<<>><<<><<<>>>><<>>><<><<<>>><>><<>>><>>>><<<><<><<<>><<<<>><>>>><<><<<<>>>><<>><<>>>><<<>><<<>>>><<<>><<<>><<<<><>>>><<>>><<<>>>><<<<>>><<>>>><<<<>>><<<<>>><<<<>>><<>>><<<<>>>><><<<<>>><<<>>><<>><<<<>>>><<>><><<<>>><<<<>>>><<<>>>><<<>>>><<<>>><><<<<>>><<<>>><<<<>><><<>>>><<<>><<<>>>><<<>>><<<><<<<>>><<<>>>><>>>><><>>>><>><<<<>>>><><<<<>>>><<>>><<<<>>>><>>>><<<<>><<<>>>><<<<><<><><>><>><<<<><<<>><>><<>><<>><<<>>>><<<>><<<><<<<>>><<<<>>><<<<>>><<<>>><<<<>>><<<><<<>><>>><<<<><<<>>>><<>>>><<<<>><>>><<<<>>>><<>><<<><<<<>><<<<>>>><<<>>>><>><<<>>><<<><>>>><<<>><><<<<><<<><<<<>>>><><<>>><<>><<><<<>><<<<>>>><<<<><<<><<<<><<<<>><<<<>>><<<>>><>><<<<>>>><<<<><<<<><<<<>><>><<<<>>>><<<<>>>><<<<>><<<<>>>><><>><<<>>>><<><<><>>><<<>>>><<<<>>>><>>>><>><<<<>><<<>>>><<<><<<<>>>><><<<<>>><<<<>>><<<><><<<>><<<<><<<>>><<<<><<<>>><<<<><<<>>><>>><<>><>>><><>><<><>>><<>>><<<<>>>><<>>>><>>><>><>>>><<<><>>>><<<><<<>>><<<><<<>>><<>>>><<<<>>><>><<<<>>>><<<>>><><<<>>><<>>><><<<<><<>><<<>><<<<>>><<<><<>>><<>>>><<<<>>><<<><<>><<<<>>>><>>>><<<>>><<>><<<<>>><<>>><<<>>><<<<>>>><<>><<>><<<>><><<>><<<><<<>>><<<>><<<<><<><<>>>><<<<>>><><<<><<<<>><<<>>><<>>><>>>><>><>>><<<>>>><<><<>><>><<<>>>><<>>>><>>><<<<>>><<<<>>><<<>><<<<>>><<<>>>><>><<>><><<<<><<>><<>><<<>><<>>>><<><<>>><><><<<<>>><>>><<<>><<<<><<<<>>>><>><<<<>>>><>>><<>>><>>>><<<<><><<<<>>>><>>>><<>>><<><<<>><<<><<>>><<<<><<<>><<><<<>><<>>><<<<><>>>><>><<<<>><<<>><<><<><<<<>>>><><>><>><<<><<<<>>><<<<><<>>>><<<<>>>><<>>>><<>><<>><>><<<<>>>><<<<>>><<<><<<>>><<><<<<>>>><<<>>>><<<<>>>><<<>>><>><<<<>><><<<<>>>><<>>>><<<><<<>>><><>><<<><<<>>><<><<<>><<<<>>><><<<>>>><><><<>>><<<>><>>><<><<<>><><<>>><<<<>>><<>><<<>>><>><><<><<<<><<<<>>><<>>>><<<>><>><<<<>><<>>>><<>>>><<<>>><<<<><><<<<>>>><>>>><>>>><>><<>>>><>>>><<<>>>><<<><<<><<>>><>><>>><>>>><<>>><<<><>><<<<>><<<<><><<<><<>><<<<>>><<<<><<<<>>><<>>><<<<>><>>>><>><<<<>>><><<<<><<>><<<<><<>>><<<>><<<<>>><<<>><<<><<>><<<<>>><<><><<<>>><<<<>>><<<>>><<<><<>><>>><<<>>><<<>><<><<<>>><<<<>><<<><<<<>><>><<>><><>>><<<>>>><<<>>><<<>><>>><><<>>>><<<<><<<>>><<<>>>><<>>><<<>><<<<>>>><<<>>>><>>>><<<<>>>><<<<>><<>><>><<>>><<>>><<>>><<<<><>>>><<<<>>><>>>><<<<>>><<<<>>><<<>><<<>>>><<>>>><<<>>><>>><<<<><<<>>><<<<>><<>>>><>>>><<<<>>>><<<<>><<<<><>>>><<>><<<>>><<<<>>><<><><<>><<>><<<>>><<>>><<<<>>><<<>>>><>><<<>>>><<<>>>><<<>>><>>>><<<>><>><<<<>><>>><<<<>><<>>><<<>><<>>>><<<<>>><<>>><<<><<<>>>><<><<><>>><<<><<>>><<<>>><>>>><<>>>><<<<>>>><<>><<<>>><<>>><<<>><<<>><<>>><<<>>><<<>>>><<<>>><>><<>>><<>><<>>>><><<<><<><<<>>><<<<>>><<<<>><<<<>><<><<<>>>><<<>>>><<<>><<<>><<>>><<<>>><<<<>>>><<<>><<>>>><>>>><<<>><<<<>>>><<<<><<<<>><<>><<<<>>>><<<>>><<<>><>>><>>>><<<<>><<<<>>><<<><<<<>>>><><>><<>><<<<>>>><<>>><<<>>><<>>><<<><<<>>><<>><<<>>>><<>>>><>><>>><<<<>>><<>>><<<><>>><<<>>>><<<>>><><<><<<>><<<><><<>>>><<<>><<<<>>><<<><>><>>>><>>><<>>>><>>><<<<>>><<<>>><<>>><>><<><>><<<>>><<<>><<<><<>><<<><<><<<<><>><<<><<><<<>>>><>>><<<<>>>><<<>>><<><<>><<<<>><>>><>>><<>>><<<<>>><<<<>>>><<<>><<>><<<<>><<<><<<>>><<>>><>><>>>><<><<<>>><<>><<<<>>><>>><<<<>><<<><<>>><<<<><<>><><<<>><><<<>>>><<<><<>>><>>><<<><>>><<<>>><<<<>>><<<<>><>><<>>><<<>>>><<<><<><<<>><<<<>>>><<<>>><<<<>>><<>>>><<<<>>><<<<><<<>><<><<>><<<<>>><<<>>>><<<<>>>><<<><<<<><<>><<<><<<<>><>>><<>><<><>>>><>><<<<>>><<<<><<<<>>><<>>><<>><<<<><<<>>><>>>><<<>><<<>><<<<><<<>>><><<>><<<<>><<<<>>>><<<<>><<<<>>><>><<<>>>><>>>><<<>>>><<>>><<<<>>><>>>><<>>><<<>>><<<>><>>>><<<<>><>>><<<>>>><<>>>><<<<>>><<<<><>>>><>>><>>><<<>><<<>><<<>>>><>>>><<>>>><<<<>>>><<<>>><<<>><>>><<<<>>>><<>>>><>>><<<>>><<>>>><<<<>>>><<<<><<<><<>>>><<<><<>>><<<<>><<<>>>><<<>><<>>><<<<><<<>>>><<<<><<<<>><>><<<>>>><><>>><<<>>><<<>>><><>>>><>>><<>>>><<<<>>>><<>>>><>>><<><>>>><<>><<>>><<<<>>><<<>><<<<>>><><<<<>><<<<>>><>><<<<>>><<<><<<<><><<<<>>><<><>><<<<>>><>>>><><<>>>><<<><>>>><>>>><<<>>><<<<>>>><<>><<><<<<><<<<>><>>>><<<<>>>><<<>>>><>>><<<>><<<>><<<>>>><<<>>>><<<>>>><<<<>><>>>><<>>><>><>>><<<<>>><<>>>><<<<><>>>><<<<>>>><<<<>>>><<<<>>>><<<>><<<<><<<>>><<>>><<>><>>><><<>><<><<<<>>><>><>>><<<<>>>><>><<<>>><>>>><<<><<<<><<<<>><>><<>><<<><<<<><<<>>><><>>><<>>>><<>><<<>>><>><<<>><><<<>>><<<<><<>><<><<<><<<>>><>>><>><<<<>>><><<<<>>>><<<<>><<<<>>><<<><<<<>><<<<><<>>><<<<><>>>><>><<<<><>><>>><<<>><<><<>><>>>><<<>>><<>>>><<<<>>>><>>>><<<><>>><<>><<<<>>><<<><<<<>>>><<<<>>><><<<>><<>><<<>><>>><<>><><>>>><>>><<<>>><<>>><<>>>><>><<<>>><>>><<<>><><<<>>><><<><><><<<<>>><<<>>><<<<>>>><<>><<>>><<<<>>><<<><<<>>><<<><<><<<><<<<><<><><<<<>><<<<>>><<<>><<<<>>><<<>>>><<>><<<><><<>>>><<>>>><><<>>>><<<><<<>>>><<<>>><>>><<<<>>><<<>><>>>><<><<<><>>>><<<<><<<<>>><>><<>>>><<<><>>>><<<><<>>>><<<<>>><>>><<<<>><<<>>>><>>><<<<>>><<>><<<>>>><<<<>>><<><<<<>>>><<>>>><<>>>><<<<>><<<<>><<>>><<>>>><>><<<>>>><>>>><<<<>>><<<<><<<<><<>><<>>>><>><<><<<<>>><<<<>>>><<<>>>><>><<<<>>><<>>><<<>><<<<>><<><<<>>><<<<>>>><<<<><<>><<><<>><<<>><<<<>>>><<<<><>>>><>>>><<<<>>><<>>><<>><<><<<>>><<<<>>>><<<><>>>><<<><<<>>>><<<><<<><<<<>>><<<<><<<<><<>>><<>><<>>>><>><<<<>>>><<<<>>><>>><<<>><<<<><<<>>>><<<>><<><<>><<<<><<><>>><<<<>>><>>><<>>><<<<>><<<<>><>>>><<><<>><>><<<<><<>>>><><<<><<<><>>><<<>><<<>>>><><<>>>><<<><>>><<<><>>>><<<<>><<<>>><<<><<>><<<>>><<>><<<>>>><<<>>>><>>>><<><><<><>><<><<>>><<><>>><>>><>>>><<>><<>>>><<<>>><<>><>>><>><<<<><<>>>><<<>>>><>>><<<>><>>>><<<<><<<>><>>><<<>>><<<<>><<<<><<><<<<><<<><<><<<>><<<<>>>><>>>><<<<>><<>>>><<><><<<>>><<<>>><<>><<<<><<>>><<<><><<>>><<<><<><<<>><<>><<>>>><>><<<<>>><<<<>>>><>><<<<><<<>>>><<<><<<>><<>>>><>><<<<>><<<<>>><<<>>>><<<>>><<<>>>><>>>><><<>>><<>>>><<<<>>><>>>><>>>><<<<>>>><>><<<<>><<>><<<><<>>><<<>>>><<<<>><<>>><<<<>>><<<>><<>>>><<<><<<>>><>>>><><<>><<<>>>><<<>>>><<><<<>><<>><<<<>><<<><<<<><<<<><<<>>><><<<>>><<<>>><>><<<>><<>>>><<<><<>>>><>><<<>>>><<>>>><<>>><<>>><>>><<<<><<<<><>>><><><>>>><<<<>>>><<<><><<<>>>><<<<>><<<<>>>><<<<><<<><<<<><<><<>><<<><<><<<<>>><<<<><<<<>>><>>><<>>><>><<>>><>>>><<<<>>><>>><<<<>><<<<>>><><<<<>><<<>>><<>>>><<<>>>><<><<<<>>>><<><<<<><<<>>><><<<>><<<>>>><>><<>>>><<>>>><<>><<<<><>>><<<<>>><>>>><<<><<>><<<<>>>><<>>><>><<<><<<>>>><>>>><<<<><<>>><<<<>>>><<<>><<<>>><><<<><<<>>>><<<<><<>><<<<>>><>><<<>>>><<<<>><<<<>>><<<<><<<<><<>><<<>>><<<<>><>>>><<<>>><<><>>>><>>><>>>><<<><><<<>>>><>>><>><<<<><<>>>><<<<>>>><>>>><<<>>>><>>>><<<>><<<>>><>>><<<>>><<><>><<<<>><>><>><><<>>>><<<>><<>>>><>><><<<>><<>>><>>>><<<<>><<<<>>>><<<<><>>>><<<<>><>>>><<<>>>><<>>><<>>><<<>>><<<>><<>><>>><><<<>>><<<><>>><<<<>>>><<>>>><<>>><<><<<><><<<<>><<>>>><<<<>><>><<>><<<>>><<<>>>><<><<<>>>><<<<><<<<>><>><<><<>>>><>>>><<>><<>><<><<>>><<<<><><><<<<>>>><>><>>><>><<<>>><<<<>>><<>>><<<<>>>><>>>><>>>><<<>>><<>>>><>>><><<<>>><<<<>>><<<>><<>>><<><>>><<><<>>><<<>><>>>><<><<><<<><<<>>><>>>><><<><<<>>><<<<><>>><>>><<>><<><<<>>>><><>>><<<><<<<>>>><>><<<<>><>>>><>><><<<<>>>><<>>>><>>><<<>><<>><<<<>>><<>>><<>>><<<><<><>><>>>><>>>><<>><<<<>><<>>>><<<><<>><<<><>><<<<><<<<>>><<<<><<<<>>><<><<>>><<>><<>>>><>>><<>><<<<><<<>>><<<<>><<<<><>><<<<>>>><>><>>>><>><>><<<<><<<>><<<<>><<<><<<<>>><<>><>>><>>><>><<>>><<<<>><<>>><<><<>>>><<<<><<<>>>><>>><>>>><<>>>><>><<>>><<><<<>>>><<<<>><><>><<<<>>><<>><<>><<<<><><<><<<>><<<<>><<>><<<><<>><<<<>>><>><>>><<<>>>><><>><><<>><>>><<<<>><<>><>>>><<>><<<<>><<>><<>>>><<<>>>><<<>>><<><>>><<>>>><<>>><<<>>>><<<>>><<<>><<>>><<>><<<<>>><<<<>><<<<>>><<>>><>><<<>>>><<<>><<<>>><<>>><<>>>><<<>><<<>><<<<><<<<>>><<<<>>><<>><<<>>><<<<>>>><>>>><<<>><<<<><>>>><<<>><<>><<>>><><<>>><>><>>><<<>>><<<<>>><<<>>><>>>><>><>>>><><<>>><>><<<>>><><<>>>><<>>><<<<><>>><<>>><>>><>><><<>><>>><<>><<>>><<<><<<<>>>><<<<>>><<<<>><<<><><<>><<<>><>>>><<<>><<<<><<<<>><<<<>>>><<<>>><><<<<><<><>><>>><>>>><<><<<>>>><>><><>>><<><<<>>><<>><<<<><<<>>><<><<>>><<<>>><<<<><>><<>><>>><<<<>><<><>>><<<<>><<<<>><<>>>><<<<>>><<><<>>><>>><>><<>><<<<>>><<<>><<<>>><<<<>><<>>><<<>>>><<<>>>><<><><><<<<>><<<>>><<<<>>>><<>>><<<<>><>><<>><<>><<<>>>><<>>><<>><<<><<<>>><<>>><<<<>><>>>><>>>><>>><<>>><<>>>><<<>>><>>>><<<<>>><<<>><<<<>>><<>><<>>>><<<><<<<><<>><<<>>>><<<<>>><<<<><<>>>><>>>><<<<>><>>>><>>><<<>>><<>>><<<<><>>><<<<><<><><>>><>><>>>><<<<>><<<><>>>><<>>>><<>>>><<>>><<<>><<<><<><<>>><<><>>>><<<<>>>><<<>>><<<>>>><<<<>>><><<<<>>><>>>><<>><<<<><<<<>><<<>>><<>><<<><>>>><<<>><>><<>>>><<<<>><<<<>><<>>>><<<<>>><<>>>><<<<><<<>><<<<>>><<<<>>>><>><<<<>>>><<<>><<<>><<><<<>>><<<>>><<<>>>><<<<>><<<>>>><>>>><<><<><<>><<<>><<>>>><<>>>><><<<>>>><<<<>>><<>>>><><>>><<><<>>>><<>>>><<>>><<>>><<<>>><<<<><<>>>><<<<>><<<<><<<>>>><<>>>><<>>><<<><<<<><<<<>>>><><>><<<>>><<<>>><<>><<<>>><>>><<>><><<>><<>><<>><<<<>><<<>>><>>>><<<<>>>><<<>>>><>>>><<>><<<>>><<><<<<>><<<<><<<>>><><<<<><<<>><<<<>>><<>>><<<>>>><<<>>>><<>><<<<>><<<<>>><>><<<>>><<<<>>><>>><<><<<<><<>>>><<<<>><<<><>>><<>><<<<>>><<<>>><<>>>><<<<><>>><>>><><<><<>><>><<>><>>><<<<>>>><<<>>><<><<>>><<><<<>>><<><<<>>><<<><<<<>>><<><>>><<<<><<<>><<<<><>>>><>><<<<>>>><<<>>>><<<><><<<><<>>><<<<>><<<<>>>><>>>><>>><><<<<><<<<><<<><<>>><<<<><<<<>><<<<>>><<<>>><<><><>>><<<<>>><<<>>>><<><<<<>>><<<<>>>><>>><<<<>>>><<<>><<>>>><<<<>>><<<>>><>>><<<<><<<<>>>><<><<<>>>><<>><<<>>>><<<>><<<<>>>><<<>>><<<<>>><>><<<<>>>><<><<<><<>><><<<<><<<<>><<>>>><<<>><<<>><<>>>><<<>><<<>>><<<<><<<>>><><<<><<<><><<>>><>><<<<>>>><<<>>><<<<><>>><<<<>>><>><<<>>>><<<>>>><<<>><<<>>><<<><<<<><<<<><>>><>><<<><<<<>>><<<<><<>>><<<<>><<>>><<<<>>>><<<><<>>><><<<>>><<<>>><>><<>>>><><<><><<<<>>><<<<><<>>><>>><<<<>>>><<<>><<>><<<><<>><<>>>><<<<>>><<<<>>><>>>><<<<>><<<><<<>>><>>>><<<<>>><<<<>>>><<<>>><>><>><<<>>><<<<>>>><<>><<<>><>><><<<<>><>>> \ No newline at end of file diff --git a/src/day_17.rs b/src/day_17.rs new file mode 100644 index 0000000..e01aae6 --- /dev/null +++ b/src/day_17.rs @@ -0,0 +1,19 @@ +use crate::input_reader; + +enum Push { + Left, + Right, +} + +pub fn run() { + let input = input_reader::read_file_in_cwd("src/day_17.data"); + + let pushes_str: Vec<&str> = input.split("").collect(); + let pushes: Vec = pushes_str.iter().map(|&val| { + return match val { + "<" => Push::Left, + ">" => Push::Right, + _ => Push::Left + } + }).collect(); +} diff --git a/src/main.rs b/src/main.rs index 80e4654..14bbb1c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -14,6 +14,8 @@ mod day_12; mod day_13; mod day_14; mod day_15; +// mod day_16; +mod day_17; fn main() { let day: String = std::env::args().nth(1).expect( @@ -37,6 +39,8 @@ fn main() { "13" => day_13::run(), "14" => day_14::run(), "15" => day_15::run(), + //"16" => day_16::run(), + "17" => day_17::run(), _ => println!("No valid day given. Possible options are: 01-25."), }; }