init
This commit is contained in:
commit
6b6fc8d486
7
d01/Cargo.lock
generated
Normal file
7
d01/Cargo.lock
generated
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 3
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "d01"
|
||||||
|
version = "0.1.0"
|
8
d01/Cargo.toml
Normal file
8
d01/Cargo.toml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
[package]
|
||||||
|
name = "d01"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
|
[dependencies]
|
2255
d01/input.txt
Normal file
2255
d01/input.txt
Normal file
File diff suppressed because it is too large
Load Diff
30
d01/src/a1.rs
Normal file
30
d01/src/a1.rs
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
|
||||||
|
|
||||||
|
pub fn run(inp :Vec<String>) {
|
||||||
|
|
||||||
|
let mut max = 0;
|
||||||
|
let mut curr_max = 0;
|
||||||
|
|
||||||
|
inp.iter().for_each(|elem| {
|
||||||
|
|
||||||
|
let number = elem.parse::<i32>();
|
||||||
|
|
||||||
|
match number {
|
||||||
|
Ok(n) => {
|
||||||
|
curr_max += n;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Err(_) => {
|
||||||
|
curr_max = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if curr_max > max {
|
||||||
|
max = curr_max;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
println!("a1: {}", max);
|
||||||
|
|
||||||
|
}
|
36
d01/src/a2.rs
Normal file
36
d01/src/a2.rs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
|
||||||
|
|
||||||
|
pub fn run(inp :Vec<String>) {
|
||||||
|
|
||||||
|
let mut curr_max = 0;
|
||||||
|
|
||||||
|
let mut elves :Vec<i32> = vec![];
|
||||||
|
|
||||||
|
inp.iter().for_each(|elem| {
|
||||||
|
|
||||||
|
let number = elem.parse::<i32>();
|
||||||
|
|
||||||
|
match number {
|
||||||
|
Ok(n) => {
|
||||||
|
curr_max += n;
|
||||||
|
}
|
||||||
|
|
||||||
|
Err(_) => {
|
||||||
|
elves.push(curr_max);
|
||||||
|
curr_max = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
let mut sum = 0;
|
||||||
|
|
||||||
|
for _ in 0..3 {
|
||||||
|
let e = elves.iter_mut().max().unwrap();
|
||||||
|
sum += *e;
|
||||||
|
*e = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
println!("a2: {}", sum);
|
||||||
|
|
||||||
|
}
|
20
d01/src/a2v2.rs
Normal file
20
d01/src/a2v2.rs
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
|
||||||
|
|
||||||
|
pub fn run(inp :Vec<String>) {
|
||||||
|
|
||||||
|
let mut v :Vec<i32> = vec![];
|
||||||
|
inp.split(|line| line.is_empty()).for_each(|vector|{
|
||||||
|
v.push(vector.iter().map(|s| s.parse::<i32>().unwrap()).sum());
|
||||||
|
});
|
||||||
|
|
||||||
|
let mut sum = 0;
|
||||||
|
|
||||||
|
for _ in 0..3 {
|
||||||
|
let e = v.iter_mut().max().unwrap();
|
||||||
|
sum += *e;
|
||||||
|
*e = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
println!("a2v2: {}", sum);
|
||||||
|
|
||||||
|
}
|
44
d01/src/main.rs
Normal file
44
d01/src/main.rs
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
use std::io::BufRead;
|
||||||
|
|
||||||
|
mod a1;
|
||||||
|
mod a2;
|
||||||
|
mod a2v2;
|
||||||
|
|
||||||
|
fn read_file(path :&str) -> Vec<String> {
|
||||||
|
|
||||||
|
let file = std::fs::File::open(path);
|
||||||
|
|
||||||
|
return match file {
|
||||||
|
|
||||||
|
Ok(handle) => {
|
||||||
|
|
||||||
|
let reader = std::io::BufReader::new(handle);
|
||||||
|
|
||||||
|
let mut vec : Vec<String> = vec![];
|
||||||
|
|
||||||
|
reader.lines().for_each(|elem| {
|
||||||
|
vec.push(elem.unwrap());
|
||||||
|
});
|
||||||
|
|
||||||
|
vec
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
Err(_) => vec![]
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
|
||||||
|
let inp :Vec<String> = read_file("input.txt");
|
||||||
|
|
||||||
|
a1::run(inp.clone());
|
||||||
|
|
||||||
|
a2::run(inp.clone());
|
||||||
|
|
||||||
|
a2v2::run(inp);
|
||||||
|
|
||||||
|
}
|
1
d01/target/.rustc_info.json
Normal file
1
d01/target/.rustc_info.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"rustc_fingerprint":15594459422025777716,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.65.0 (897e37553 2022-11-02)\nbinary: rustc\ncommit-hash: 897e37553bba8b42751c67658967889d11ecd120\ncommit-date: 2022-11-02\nhost: x86_64-pc-windows-msvc\nrelease: 1.65.0\nLLVM version: 15.0.0\n","stderr":""},"10376369925670944939":{"success":true,"status":"","code":0,"stdout":"___.exe\nlib___.rlib\n___.dll\n___.dll\n___.lib\n___.dll\nC:\\Users\\tfuec\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"msvc\"\ntarget_family=\"windows\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"windows\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"pc\"\nwindows\n","stderr":""},"8623966523033996810":{"success":true,"status":"","code":0,"stdout":"___.exe\nlib___.rlib\n___.dll\n___.dll\n___.lib\n___.dll\n","stderr":""},"8204103499295538959":{"success":true,"status":"","code":0,"stdout":"___.exe\nlib___.rlib\n___.dll\n___.dll\n___.lib\n___.dll\nC:\\Users\\tfuec\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"msvc\"\ntarget_family=\"windows\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"windows\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"pc\"\nwindows\n","stderr":""},"15697416045686424142":{"success":true,"status":"","code":0,"stdout":"___.exe\nlib___.rlib\n___.dll\n___.dll\n___.lib\n___.dll\n","stderr":""}},"successes":{}}
|
3
d01/target/CACHEDIR.TAG
Normal file
3
d01/target/CACHEDIR.TAG
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
Signature: 8a477f597d28d172789f06886806bc55
|
||||||
|
# This file is a cache directory tag created by cargo.
|
||||||
|
# For information about cache directory tags see https://bford.info/cachedir/
|
0
d01/target/debug/.cargo-lock
Normal file
0
d01/target/debug/.cargo-lock
Normal file
Binary file not shown.
@ -0,0 +1 @@
|
|||||||
|
This file has an mtime of when this was started.
|
@ -0,0 +1 @@
|
|||||||
|
f4fed016c8cb9bb8
|
@ -0,0 +1 @@
|
|||||||
|
{"rustc":2347157018072859861,"features":"[]","target":5942172765485062484,"profile":1021633075455700787,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug\\.fingerprint\\d01-127e69ad57c09331\\dep-test-bin-d01"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}
|
@ -0,0 +1 @@
|
|||||||
|
94b9f606d749aa3d
|
@ -0,0 +1 @@
|
|||||||
|
{"rustc":2347157018072859861,"features":"[]","target":5942172765485062484,"profile":9251013656241001069,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug\\.fingerprint\\d01-272616afaffa365b\\dep-bin-d01"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}
|
BIN
d01/target/debug/.fingerprint/d01-272616afaffa365b/dep-bin-d01
Normal file
BIN
d01/target/debug/.fingerprint/d01-272616afaffa365b/dep-bin-d01
Normal file
Binary file not shown.
@ -0,0 +1 @@
|
|||||||
|
This file has an mtime of when this was started.
|
@ -0,0 +1 @@
|
|||||||
|
255bedb9966dc8f6
|
@ -0,0 +1 @@
|
|||||||
|
{"rustc":2347157018072859861,"features":"[]","target":5942172765485062484,"profile":7309141686862299243,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug\\.fingerprint\\d01-357b075baeb11298\\dep-bin-d01"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}
|
BIN
d01/target/debug/.fingerprint/d01-357b075baeb11298/dep-bin-d01
Normal file
BIN
d01/target/debug/.fingerprint/d01-357b075baeb11298/dep-bin-d01
Normal file
Binary file not shown.
@ -0,0 +1 @@
|
|||||||
|
This file has an mtime of when this was started.
|
1
d01/target/debug/d01.d
Normal file
1
d01/target/debug/d01.d
Normal file
@ -0,0 +1 @@
|
|||||||
|
C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\d01.exe: C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\src\a1.rs C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\src\a2.rs C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\src\a2v2.rs C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\src\main.rs
|
BIN
d01/target/debug/d01.exe
Normal file
BIN
d01/target/debug/d01.exe
Normal file
Binary file not shown.
BIN
d01/target/debug/d01.pdb
Normal file
BIN
d01/target/debug/d01.pdb
Normal file
Binary file not shown.
8
d01/target/debug/deps/d01-127e69ad57c09331.d
Normal file
8
d01/target/debug/deps/d01-127e69ad57c09331.d
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
c:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\deps\d01-127e69ad57c09331.rmeta: src\main.rs src\a1.rs src\a2.rs src\a2v2.rs
|
||||||
|
|
||||||
|
c:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\deps\d01-127e69ad57c09331.d: src\main.rs src\a1.rs src\a2.rs src\a2v2.rs
|
||||||
|
|
||||||
|
src\main.rs:
|
||||||
|
src\a1.rs:
|
||||||
|
src\a2.rs:
|
||||||
|
src\a2v2.rs:
|
8
d01/target/debug/deps/d01-357b075baeb11298.d
Normal file
8
d01/target/debug/deps/d01-357b075baeb11298.d
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
c:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\deps\d01-357b075baeb11298.rmeta: src\main.rs src\a1.rs src\a2.rs src\a2v2.rs
|
||||||
|
|
||||||
|
c:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\deps\d01-357b075baeb11298.d: src\main.rs src\a1.rs src\a2.rs src\a2v2.rs
|
||||||
|
|
||||||
|
src\main.rs:
|
||||||
|
src\a1.rs:
|
||||||
|
src\a2.rs:
|
||||||
|
src\a2v2.rs:
|
8
d01/target/debug/deps/d01.d
Normal file
8
d01/target/debug/deps/d01.d
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\deps\d01.exe: src\main.rs src\a1.rs src\a2.rs src\a2v2.rs
|
||||||
|
|
||||||
|
C:\personal\Programmierdaten\rust\advent_of_code\y2022\d01\target\debug\deps\d01.d: src\main.rs src\a1.rs src\a2.rs src\a2v2.rs
|
||||||
|
|
||||||
|
src\main.rs:
|
||||||
|
src\a1.rs:
|
||||||
|
src\a2.rs:
|
||||||
|
src\a2v2.rs:
|
BIN
d01/target/debug/deps/d01.exe
Normal file
BIN
d01/target/debug/deps/d01.exe
Normal file
Binary file not shown.
BIN
d01/target/debug/deps/d01.pdb
Normal file
BIN
d01/target/debug/deps/d01.pdb
Normal file
Binary file not shown.
0
d01/target/debug/deps/libd01-127e69ad57c09331.rmeta
Normal file
0
d01/target/debug/deps/libd01-127e69ad57c09331.rmeta
Normal file
0
d01/target/debug/deps/libd01-357b075baeb11298.rmeta
Normal file
0
d01/target/debug/deps/libd01-357b075baeb11298.rmeta
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user