diff options
Diffstat (limited to 'src/day2pt1.rs')
| -rw-r--r-- | src/day2pt1.rs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/day2pt1.rs b/src/day2pt1.rs new file mode 100644 index 0000000..c1dad9c --- /dev/null +++ b/src/day2pt1.rs @@ -0,0 +1,44 @@ +pub fn main() { + let _max_red: u32 = 12; + let _max_green: u32 = 13; + let _max_blue: u32 = 14; + + let mut sum: u32 = 0; + let mut idx: u32 = 1; + + let txt = std::fs::read_to_string("./input/day2.txt").unwrap(); + for line in txt.lines() { + let pline = line.split(": ").last().unwrap(); + + // za svaku liniju + let mut ind: bool = true; + + for i in pline.split("; ") { + for boje in i.split(", ") { + let broj = boje.split(" ").nth(0).unwrap().parse::<u32>().unwrap(); + let boja = boje.split(" ").last().unwrap(); + + ind = match boja { + "red" => _max_red >= broj, + "green" => _max_green >= broj, + "blue" => _max_blue >= broj, + _ => ind, + }; + if ind == false { + break; + } + } + if ind == false { + break; + } + } + + if ind { + sum += idx; + } + + idx += 1; + } + + println!("{}", sum); +} |
