From 5215f3bb5f9e36481b767a5676a2ffaf2ff5a0cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20B=C3=BChler?= Date: Sat, 26 Dec 2020 10:37:15 +0100 Subject: [PATCH] reorganize data files, use data files for all days (even when not provided as download) --- Cargo.toml | 2 -- data/{day1/input => day1} | 0 data/{day10/input => day10} | 0 data/{day11/input => day11} | 0 data/{day12/input => day12} | 0 data/{day13/input => day13} | 0 data/{day14/input => day14} | 0 data/day15 | 1 + data/{day16/input => day16} | 0 data/{day17/input => day17} | 0 data/{day18/input => day18} | 0 data/{day19/input => day19} | 0 data/{day2/input => day2} | 0 data/{day20/input => day20} | 0 data/{day21/input => day21} | 0 data/{day22/input => day22} | 0 data/day23 | 1 + data/{day24/input => day24} | 0 data/{day25/input => day25} | 0 data/{day3/input => day3} | 0 data/{day4/input => day4} | 0 data/{day5/input => day5} | 0 data/{day6/input => day6} | 0 data/{day7/input => day7} | 0 data/{day8/input => day8} | 0 data/{day9/input => day9} | 0 src/bin/day1.rs | 2 +- src/bin/day10.rs | 2 +- src/bin/day11.rs | 2 +- src/bin/day12.rs | 2 +- src/bin/day13.rs | 2 +- src/bin/day14.rs | 2 +- src/bin/day15.rs | 4 ++-- src/bin/day16.rs | 2 +- src/bin/day17.rs | 2 +- src/bin/day18.rs | 2 +- src/bin/day19.rs | 2 +- src/bin/day2.rs | 2 +- src/bin/day20.rs | 2 +- src/bin/day21.rs | 2 +- src/bin/day22.rs | 2 +- src/bin/day23.rs | 6 +++--- src/bin/day24.rs | 2 +- src/bin/day25.rs | 2 +- src/bin/day3.rs | 2 +- src/bin/day4/main.rs | 2 +- src/bin/day5.rs | 2 +- src/bin/day6.rs | 2 +- src/bin/day7.rs | 2 +- src/bin/day8.rs | 2 +- src/bin/day9.rs | 2 +- 51 files changed, 30 insertions(+), 30 deletions(-) rename data/{day1/input => day1} (100%) rename data/{day10/input => day10} (100%) rename data/{day11/input => day11} (100%) rename data/{day12/input => day12} (100%) rename data/{day13/input => day13} (100%) rename data/{day14/input => day14} (100%) create mode 100644 data/day15 rename data/{day16/input => day16} (100%) rename data/{day17/input => day17} (100%) rename data/{day18/input => day18} (100%) rename data/{day19/input => day19} (100%) rename data/{day2/input => day2} (100%) rename data/{day20/input => day20} (100%) rename data/{day21/input => day21} (100%) rename data/{day22/input => day22} (100%) create mode 100644 data/day23 rename data/{day24/input => day24} (100%) rename data/{day25/input => day25} (100%) rename data/{day3/input => day3} (100%) rename data/{day4/input => day4} (100%) rename data/{day5/input => day5} (100%) rename data/{day6/input => day6} (100%) rename data/{day7/input => day7} (100%) rename data/{day8/input => day8} (100%) rename data/{day9/input => day9} (100%) diff --git a/Cargo.toml b/Cargo.toml index d162880..05fa79a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,6 +4,4 @@ version = "0.1.0" authors = ["Stefan Bühler "] edition = "2018" -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - [dependencies] diff --git a/data/day1/input b/data/day1 similarity index 100% rename from data/day1/input rename to data/day1 diff --git a/data/day10/input b/data/day10 similarity index 100% rename from data/day10/input rename to data/day10 diff --git a/data/day11/input b/data/day11 similarity index 100% rename from data/day11/input rename to data/day11 diff --git a/data/day12/input b/data/day12 similarity index 100% rename from data/day12/input rename to data/day12 diff --git a/data/day13/input b/data/day13 similarity index 100% rename from data/day13/input rename to data/day13 diff --git a/data/day14/input b/data/day14 similarity index 100% rename from data/day14/input rename to data/day14 diff --git a/data/day15 b/data/day15 new file mode 100644 index 0000000..1c63dd2 --- /dev/null +++ b/data/day15 @@ -0,0 +1 @@ +5,2,8,16,18,0,1 diff --git a/data/day16/input b/data/day16 similarity index 100% rename from data/day16/input rename to data/day16 diff --git a/data/day17/input b/data/day17 similarity index 100% rename from data/day17/input rename to data/day17 diff --git a/data/day18/input b/data/day18 similarity index 100% rename from data/day18/input rename to data/day18 diff --git a/data/day19/input b/data/day19 similarity index 100% rename from data/day19/input rename to data/day19 diff --git a/data/day2/input b/data/day2 similarity index 100% rename from data/day2/input rename to data/day2 diff --git a/data/day20/input b/data/day20 similarity index 100% rename from data/day20/input rename to data/day20 diff --git a/data/day21/input b/data/day21 similarity index 100% rename from data/day21/input rename to data/day21 diff --git a/data/day22/input b/data/day22 similarity index 100% rename from data/day22/input rename to data/day22 diff --git a/data/day23 b/data/day23 new file mode 100644 index 0000000..79e342c --- /dev/null +++ b/data/day23 @@ -0,0 +1 @@ +315679824 diff --git a/data/day24/input b/data/day24 similarity index 100% rename from data/day24/input rename to data/day24 diff --git a/data/day25/input b/data/day25 similarity index 100% rename from data/day25/input rename to data/day25 diff --git a/data/day3/input b/data/day3 similarity index 100% rename from data/day3/input rename to data/day3 diff --git a/data/day4/input b/data/day4 similarity index 100% rename from data/day4/input rename to data/day4 diff --git a/data/day5/input b/data/day5 similarity index 100% rename from data/day5/input rename to data/day5 diff --git a/data/day6/input b/data/day6 similarity index 100% rename from data/day6/input rename to data/day6 diff --git a/data/day7/input b/data/day7 similarity index 100% rename from data/day7/input rename to data/day7 diff --git a/data/day8/input b/data/day8 similarity index 100% rename from data/day8/input rename to data/day8 diff --git a/data/day9/input b/data/day9 similarity index 100% rename from data/day9/input rename to data/day9 diff --git a/src/bin/day1.rs b/src/bin/day1.rs index 3dec301..cd0f3f2 100644 --- a/src/bin/day1.rs +++ b/src/bin/day1.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day1/input"); +const INPUT: &str = include_str!("../../data/day1"); fn main() { let expenses: Vec<_> = INPUT.split_whitespace().map(|s| s.parse::().unwrap()).collect(); diff --git a/src/bin/day10.rs b/src/bin/day10.rs index ea2d282..6bc652e 100644 --- a/src/bin/day10.rs +++ b/src/bin/day10.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day10/input"); +const INPUT: &str = include_str!("../../data/day10"); fn calc(input: &[u32], cache: &mut [Option], ndx: usize) -> u64 { if let Some(n) = cache[ndx] { diff --git a/src/bin/day11.rs b/src/bin/day11.rs index 285c838..9c4a48c 100644 --- a/src/bin/day11.rs +++ b/src/bin/day11.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day11/input"); +const INPUT: &str = include_str!("../../data/day11"); #[derive(Clone, Copy, PartialEq, Eq, Debug)] enum Cell { diff --git a/src/bin/day12.rs b/src/bin/day12.rs index c1d0c3e..cd1a5e1 100644 --- a/src/bin/day12.rs +++ b/src/bin/day12.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day12/input"); +const INPUT: &str = include_str!("../../data/day12"); #[derive(Clone, Copy, PartialEq, Eq, Debug)] enum Rotate { diff --git a/src/bin/day13.rs b/src/bin/day13.rs index a250d0d..10ab1bd 100644 --- a/src/bin/day13.rs +++ b/src/bin/day13.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day13/input"); +const INPUT: &str = include_str!("../../data/day13"); struct Input { now: i128, diff --git a/src/bin/day14.rs b/src/bin/day14.rs index 82aa34c..2db297e 100644 --- a/src/bin/day14.rs +++ b/src/bin/day14.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day14/input"); +const INPUT: &str = include_str!("../../data/day14"); use std::collections::HashMap; diff --git a/src/bin/day15.rs b/src/bin/day15.rs index 8a77cbe..d4bffc4 100644 --- a/src/bin/day15.rs +++ b/src/bin/day15.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -const INPUT: &str = "5,2,8,16,18,0,1"; +const INPUT: &str = include_str!("../../data/day15"); struct Memory { turn: usize, @@ -27,7 +27,7 @@ impl Memory { } fn main() { - let input: Vec = INPUT.split(",").map(|s| s.parse().unwrap()).collect(); + let input: Vec = INPUT.trim().split(",").map(|s| s.parse().unwrap()).collect(); let mut mem = Memory::new(); for &value in &input { mem.remember(value); diff --git a/src/bin/day16.rs b/src/bin/day16.rs index ac90e7a..f256384 100644 --- a/src/bin/day16.rs +++ b/src/bin/day16.rs @@ -1,7 +1,7 @@ use std::ops::RangeInclusive; use std::collections::{HashSet, HashMap}; -const INPUT: &str = include_str!("../../data/day16/input"); +const INPUT: &str = include_str!("../../data/day16"); #[derive(Clone, Debug)] struct Field { diff --git a/src/bin/day17.rs b/src/bin/day17.rs index b1056de..552cc47 100644 --- a/src/bin/day17.rs +++ b/src/bin/day17.rs @@ -1,6 +1,6 @@ use std::ops::Range; -const INPUT: &str = include_str!("../../data/day17/input"); +const INPUT: &str = include_str!("../../data/day17"); #[derive(Clone, Copy, Default)] struct Dimension { diff --git a/src/bin/day18.rs b/src/bin/day18.rs index 7859bd4..a4ca796 100644 --- a/src/bin/day18.rs +++ b/src/bin/day18.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day18/input"); +const INPUT: &str = include_str!("../../data/day18"); #[derive(Clone, Copy, PartialEq, Eq, Debug)] enum Op { diff --git a/src/bin/day19.rs b/src/bin/day19.rs index e4c47f0..4879473 100644 --- a/src/bin/day19.rs +++ b/src/bin/day19.rs @@ -1,7 +1,7 @@ use std::collections::{HashMap, HashSet}; use std::sync::Arc; -const INPUT: &str = include_str!("../../data/day19/input"); +const INPUT: &str = include_str!("../../data/day19"); #[derive(Clone, Debug)] enum Rule { diff --git a/src/bin/day2.rs b/src/bin/day2.rs index 440fce4..5981a48 100644 --- a/src/bin/day2.rs +++ b/src/bin/day2.rs @@ -1,6 +1,6 @@ use std::convert::TryInto; -const INPUT: &str = include_str!("../../data/day2/input"); +const INPUT: &str = include_str!("../../data/day2"); struct Policy { min: usize, diff --git a/src/bin/day20.rs b/src/bin/day20.rs index 88af7ce..b527c02 100644 --- a/src/bin/day20.rs +++ b/src/bin/day20.rs @@ -1,6 +1,6 @@ use std::collections::HashMap; -const INPUT: &str = include_str!("../../data/day20/input"); +const INPUT: &str = include_str!("../../data/day20"); #[derive(Clone, Copy, PartialOrd, Ord, PartialEq, Eq, Hash, Debug)] enum Side { diff --git a/src/bin/day21.rs b/src/bin/day21.rs index 9344141..3d4cd87 100644 --- a/src/bin/day21.rs +++ b/src/bin/day21.rs @@ -1,6 +1,6 @@ use std::collections::{BTreeMap, HashMap, HashSet}; -const INPUT: &str = include_str!("../../data/day21/input"); +const INPUT: &str = include_str!("../../data/day21"); struct FoodDescription<'a> { ingredients: HashSet<&'a str>, diff --git a/src/bin/day22.rs b/src/bin/day22.rs index efa7a01..14413eb 100644 --- a/src/bin/day22.rs +++ b/src/bin/day22.rs @@ -2,7 +2,7 @@ use std::collections::{VecDeque, HashSet}; type Deck = VecDeque; -const INPUT: &str = include_str!("../../data/day22/input"); +const INPUT: &str = include_str!("../../data/day22"); fn parse_player(block: &str) -> (u32, Deck) { let block = block.strip_prefix("Player ").unwrap(); diff --git a/src/bin/day23.rs b/src/bin/day23.rs index 98ef396..33e2ae2 100644 --- a/src/bin/day23.rs +++ b/src/bin/day23.rs @@ -1,6 +1,6 @@ use std::mem::replace; -const INPUT: &str = "315679824"; +const INPUT: &str = include_str!("../../data/day23"); type Item = usize; @@ -200,14 +200,14 @@ impl Cups { } fn main() { - let mut cups = Cups::parse(INPUT); + let mut cups = Cups::parse(INPUT.trim()); for _ in 0..100 { cups.mix(); } cups.rotate_to_one(); println!("Cups: {}", cups.iter().skip(1).map(|c| format!("{}", c)).collect::>().join("")); - let mut cups = Cups::parse(INPUT); + let mut cups = Cups::parse(INPUT.trim()); cups.extend(10..=1000000); for _ in 0..10000000 { cups.mix() diff --git a/src/bin/day24.rs b/src/bin/day24.rs index 3aa38db..e357778 100644 --- a/src/bin/day24.rs +++ b/src/bin/day24.rs @@ -1,6 +1,6 @@ use std::collections::HashSet; -const INPUT: &str = include_str!("../../data/day24/input"); +const INPUT: &str = include_str!("../../data/day24"); #[derive(Clone, Copy, PartialEq, Eq, Hash, Debug)] enum Direction { diff --git a/src/bin/day25.rs b/src/bin/day25.rs index fe8afad..19ed1f5 100644 --- a/src/bin/day25.rs +++ b/src/bin/day25.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day25/input"); +const INPUT: &str = include_str!("../../data/day25"); const MOD: u32 = 20201227; diff --git a/src/bin/day3.rs b/src/bin/day3.rs index d54e262..35a8480 100644 --- a/src/bin/day3.rs +++ b/src/bin/day3.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day3/input"); +const INPUT: &str = include_str!("../../data/day3"); struct Forest { pub rows: usize, diff --git a/src/bin/day4/main.rs b/src/bin/day4/main.rs index cdc5545..653e57f 100644 --- a/src/bin/day4/main.rs +++ b/src/bin/day4/main.rs @@ -2,7 +2,7 @@ pub mod passport; use passport::Passport; -const INPUT: &str = include_str!("../../../data/day4/input"); +const INPUT: &str = include_str!("../../../data/day4"); fn main() { let passports = Passport::parse_list(INPUT); diff --git a/src/bin/day5.rs b/src/bin/day5.rs index a0a8f77..7aad838 100644 --- a/src/bin/day5.rs +++ b/src/bin/day5.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day5/input"); +const INPUT: &str = include_str!("../../data/day5"); #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Debug)] struct Seat { diff --git a/src/bin/day6.rs b/src/bin/day6.rs index beda123..21b6699 100644 --- a/src/bin/day6.rs +++ b/src/bin/day6.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day6/input"); +const INPUT: &str = include_str!("../../data/day6"); #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Debug)] struct Answers { diff --git a/src/bin/day7.rs b/src/bin/day7.rs index 0c5a39a..a07f7d5 100644 --- a/src/bin/day7.rs +++ b/src/bin/day7.rs @@ -1,6 +1,6 @@ use std::collections::{HashMap, HashSet, VecDeque}; -const INPUT: &str = include_str!("../../data/day7/input"); +const INPUT: &str = include_str!("../../data/day7"); #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Debug)] struct BagId(usize); diff --git a/src/bin/day8.rs b/src/bin/day8.rs index 5194577..6904406 100644 --- a/src/bin/day8.rs +++ b/src/bin/day8.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day8/input"); +const INPUT: &str = include_str!("../../data/day8"); #[derive(Clone, Copy, PartialEq, Eq, Debug)] enum Instruction { diff --git a/src/bin/day9.rs b/src/bin/day9.rs index f7735d4..0a4ed8b 100644 --- a/src/bin/day9.rs +++ b/src/bin/day9.rs @@ -1,4 +1,4 @@ -const INPUT: &str = include_str!("../../data/day9/input"); +const INPUT: &str = include_str!("../../data/day9"); // store sums of elems in different row and colum, but just once // | 0 | 1 | 2 | 3 | ...