aoc

My solutions for the Advent of Code
git clone https://git.tronto.net/aoc
Download | Log | Files | Refs | README

a.rs (598B)


      1 use std::cmp::{min, max};
      2 mod common;
      3 use common::*;
      4 
      5 fn size(elves: &Vec<(i64, i64)>) -> usize {
      6     let mut imax = i64::MIN;
      7     let mut jmax = i64::MIN;
      8     let mut imin = i64::MAX;
      9     let mut jmin = i64::MAX;
     10     for e in elves {
     11         imax = max(imax, e.0);
     12         jmax = max(jmax, e.1);
     13         imin = min(imin, e.0);
     14         jmin = min(jmin, e.1);
     15     }
     16     ((imax-imin+1) * (jmax-jmin+1)) as usize
     17 }
     18 
     19 fn main() {
     20     let (mut elves, mut lookup) = read_from_stdin();
     21     let _ = play(&mut elves, &mut lookup, 10);
     22     let result = size(&elves) - elves.len();
     23     println!("{result}");
     24 }