d2p1
This commit is contained in:
parent
c5f772054e
commit
79ff128e33
7
day2/Cargo.lock
generated
Normal file
7
day2/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 = "day2"
|
||||||
|
version = "0.1.0"
|
8
day2/Cargo.toml
Normal file
8
day2/Cargo.toml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
[package]
|
||||||
|
name = "day2"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
|
[dependencies]
|
2500
day2/input.txt
Normal file
2500
day2/input.txt
Normal file
File diff suppressed because it is too large
Load Diff
33
day2/src/main.rs
Normal file
33
day2/src/main.rs
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
use std::env;
|
||||||
|
use std::fs::File;
|
||||||
|
use std::io::BufReader;
|
||||||
|
use std::io::BufRead;
|
||||||
|
|
||||||
|
fn score(line: String) -> i64 {
|
||||||
|
match line.trim() {
|
||||||
|
"A X" => 1 + 3,
|
||||||
|
"A Y" => 2 + 6,
|
||||||
|
"A Z" => 3 + 0,
|
||||||
|
"B X" => 1 + 0,
|
||||||
|
"B Y" => 2 + 3,
|
||||||
|
"B Z" => 3 + 6,
|
||||||
|
"C X" => 1 + 6,
|
||||||
|
"C Y" => 2 + 0,
|
||||||
|
"C Z" => 3 + 3,
|
||||||
|
_other => 0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
let args: Vec<String> = env::args().collect();
|
||||||
|
let input = &args[1];
|
||||||
|
let reader = BufReader::new(File::open(input).expect("where file?"));
|
||||||
|
|
||||||
|
let mut sum = 0;
|
||||||
|
for line in reader.lines() {
|
||||||
|
sum += score(line.unwrap());
|
||||||
|
}
|
||||||
|
|
||||||
|
println!("Sum: {}", sum);
|
||||||
|
}
|
||||||
|
|
4
day2/test.txt
Normal file
4
day2/test.txt
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
A Y
|
||||||
|
B X
|
||||||
|
C Z
|
||||||
|
|
Loading…
Reference in New Issue
Block a user