From 174772b5b8d9f5bf5e3c8e8152adfd89f0e83f6b Mon Sep 17 00:00:00 2001 From: Justin Wernick Date: Tue, 19 Apr 2022 20:22:56 +0200 Subject: Refile for merging repos --- aoc2/Cargo.lock | 4 ---- aoc2/Cargo.toml | 6 ------ aoc2/input.txt | 5 ----- aoc2/src/main.rs | 61 -------------------------------------------------------- 4 files changed, 76 deletions(-) delete mode 100644 aoc2/Cargo.lock delete mode 100644 aoc2/Cargo.toml delete mode 100644 aoc2/input.txt delete mode 100644 aoc2/src/main.rs (limited to 'aoc2') diff --git a/aoc2/Cargo.lock b/aoc2/Cargo.lock deleted file mode 100644 index b0dbf6e..0000000 --- a/aoc2/Cargo.lock +++ /dev/null @@ -1,4 +0,0 @@ -[root] -name = "aoc2" -version = "0.1.0" - diff --git a/aoc2/Cargo.toml b/aoc2/Cargo.toml deleted file mode 100644 index e4dcc6f..0000000 --- a/aoc2/Cargo.toml +++ /dev/null @@ -1,6 +0,0 @@ -[package] -name = "aoc2" -version = "0.1.0" -authors = ["Justin Worthe "] - -[dependencies] diff --git a/aoc2/input.txt b/aoc2/input.txt deleted file mode 100644 index ba5a73d..0000000 --- a/aoc2/input.txt +++ /dev/null @@ -1,5 +0,0 @@ -RUDULRLLUULRURDDRRUDURULLLDRLRLUDDLUDUDDUDRRDUDULDUUULLRULLRLDDLDLDDRLRRRRUDLLDDUULDRLLUDDRRUURLULRRRDLLURRUUDURUDDURLUDDDLUDDUUDUURUDLRDRDRLRDRLDRUDRUUDLRDDRRURDDLRDDRRURDUDDLULLUDRURURRRLRRUDUULULULRRLDLUDUURRLLRUDLLDRDDLRRRULRUDLULDDLLLULDLRUDLLLLRDDLRDRLDRLLRDRRDLRDULULRLLLDRUDRRRUULRUULDRURLUDRURRDLLDLRDLDDDDRRLUDLRRLUUUURDRDDLRRURURRDUULLRLURLURUDDDRDURDUUDRLRLRRLDDLDLDLDDDUDDULURLDDLLRLRRDULUDDLULRLUDDLDLRULUUUDRLDRUDURLUDDRLLRUULDLRRRRDLLLLURULLRDRRUDLUULRRDLLRLRLUDLDDULLDLLRDLDLL -LLUUUUUUDUDRLRDRDLDURRRLLRRLRURLLUURRLLUDUDLULUURUUURDLUDLDDLULLRDLRUULDLRDUDURLLDDUDUDULLUDDUULLLUULRRRLULRURRDLRUDUDDURRRDRUURDURLLULLRULLDRUULLURLDRDUUDDDDDDRRLDRLRRRLULDDUURRLLLLDRURLURDRDRDURUDUURRDUDUDRLLUUDDRLUDDDRDLDLRLDRURRDLLRULDRLLURURRLUULLRLRRURDDRDRUUURUURUUUDLLRRLUDRLDLRLURLDLUDDUDDDLDUDRRLDLRURULRLLRDUULURRRULDLLLRLDDDUURRRRDULLRURRLULULDLRRUDUDDLRUURDLDUDDUDRRDLRRRDUDUUUDLLDDDDLURLURRRUUULLLULRRLLLLLLULDUUDLRUDRRDLRDUUDUDLLRLDLLRUURDUUURUUUDDLLUUDLULDURLULULUUUDRUDULLURRULRULLRDLDDU -RLUUURULLDLRLDUDRDURRDUURLLUDDDUULRRRLRLURDDRUULUDULDUUDDDDUDDDDRUDDLDUUDRUDLRRRLLRDDLLLRLLRUULRUULDDRURRLURRLRLULDDRRRDDURDDRDRDULRUDRUUDULRLLULDLRLLDRULRDDRRDDUDLRLLUDRDRRRLUDULRDLRDDURRUUDDRRUDURRUUUDDRRDUDURLUUDUDUURDDDLURLULLUULULURUDUUDRUDULLUUULURDLDUULLDDLLDULRLRLRDUUURUUDLRLDURUDRLDULLUDLDLLRDUURRDUDURLUUUDLLRRULRLULRLDLLURDURRULRLLRRDUDLLRDRRRRDLUUDRUUUDDLRLUDDDDDDRURRRUUURRDLLRURLDDLLDLRRLLLDRRULRRUDLDRDDRRLULURLLUURURURRRRUUUUURUDURLRLLLULULDLLDLRDRRULUDUDRDRRDRDRRDUDLLLRUDRUDDDULRULRRRDRLRUUUURUDURDUUULLULRUDDULDUUDLDURRD -ULRULDDLDLULLLRRRLRUDDDDDLLDDUDLRRDULUUDRDLRRURDRRLUULRURUDRRULDLLLUDRUUDULULUDDRUDDDRDURRRDRDUUURLRDULUDRDRLDRUDDLLLDRRULUDLUDLDLLRRUDUULULDLDLLUURDLDDLLUUDURLURLLLDRDLDRRLRULUURRDRULRUUURULRRUDDDDLLDLDDLLRRLRRRRDUUDUDLDRDRRURDLRURULDLRDLLLLRUDRLLRDLRLRDURDRUDURRRLRDRDLLRLUDDDDRLRLLDUURRURLUURUULUDLUURDRRUDDLUDUDDDURRDRUDRLRULDULUUUUUUDDUDRUDUUURUDRRDLUDLUUDUULUDURDLDDDLLURRURUUDUDDRRDRLLULULDRLRURRDDDRDUUURDDDRULUDRDDLDURRLDDDLRRRLDDRDURULDLUDLLLURLURRLRRULDLLDDUDRRULDRRRRLURRUULRRRUDLURDLLDLLDULUUDRRLDLLLDRLRUDLUULDLDRUDUDURDRUDRDDDLRLULLUR -LRLUUURRLRRRRRUURRLLULRLULLDLUDLUDRDDRLDLRLULLURDURLURDLLRLDUUDDURRRRLDLLRULLRLDLLUUDRLDDLLDRULDRLLRURDLRURRUDLULLRURDLURRURUDULLDRLLUUULUDRURRUUDUDULUUULRLDDULDRDLUDDUDDDLRURULLDLLLRLLUURDLRUDLLLLDLLRLRUUUDDRUUUUDLDLRDDURLDURUULLLUUDLLLLDULRRRLLDLDRRDRLUDRUDURLLUDLRLLUDUDRDDDRDLRDLRULUULDRLUDLRLDUURLRRLUDDDUUDDDUDRLDLDUDLURUULLDDDURUUULRLUDLDURUUDRDRURUDDUURDUUUDLLDLDLDURUURLLLLRURUURURULRULLRUDLRRUUUUUDRRLLRDDUURDRDRDDDUDRLURDRRRUDLLLDURDLUUDLLUDDULUUDLDUUULLDRDLRURUURRDURRDLURRRRLLUUULRDULDDLDUURRDLDLLULRRLLUDLDUDLUUL diff --git a/aoc2/src/main.rs b/aoc2/src/main.rs deleted file mode 100644 index f4c3bfd..0000000 --- a/aoc2/src/main.rs +++ /dev/null @@ -1,61 +0,0 @@ -use std::io::BufReader; -use std::io::prelude::*; -use std::fs::File; - -fn main() { - let lines = read_file(); - let mut current = 5; - for line in lines { - current = line.chars().fold(current, |current, dir| move_char_hex(current, dir)); - println!("{:X}", current); - } -} - -fn read_file() -> Vec { - let file = BufReader::new(File::open("input.txt").unwrap()); - file.lines() - .map(|line| line.unwrap().trim().to_string()) - .filter(|line| line.len() > 0) - .collect() -} - - -//assume current in 1-9 range, and char is in UDLR -fn move_char(current: i32, dir: char) -> i32 { - match dir { - 'U' => if current <= 3 { current } else { current - 3}, - 'D' => if current >= 7 { current } else { current + 3}, - 'L' => if current%3 == 1 { current } else { current - 1}, - 'R' => if current%3 == 0 { current } else { current + 1}, - _ => panic!("Bad direction character") - } -} - -// 1 -// 2 3 4 -// 5 6 7 8 9 -// A B C -// D -fn move_char_hex(current: i32, dir: char) -> i32 { - match dir { - 'U' => match current { - 1|2|4|5|9 => current, - 3|13 => current - 2, - _ => current - 4 - }, - 'D' => match current { - 5|10|13|12|9 => current, - 1|11 => current + 1, - _ => current + 4 - }, - 'L' => match current { - 1|2|5|10|13 => current, - _ => current - 1 - }, - 'R' => match current { - 1|4|9|12|13 => current, - _ => current + 1 - }, - _ => panic!("Bad direction character") - } -} -- cgit v1.2.3