You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
820 B
Rust

use std::io;
fn main() -> io::Result<()> {
// read from stdin
let stdin = io::stdin();
let lines = stdin.lines();
let mut elves = Vec::new();
let mut c_sum = 0;
for line in lines {
let content = line.unwrap();
if content.is_empty() {
elves.push(c_sum);
c_sum = 0;
} else {
let new_val = match content.parse::<i32>() {
Ok(v) => v,
Err(_e) =>{ println!("Error parsing input"); 0 }
};
c_sum += new_val;
}
}
elves.sort();
elves.reverse();
let mut result = 0;
if elves.len() > 3 {
for n in 0..3 {
result += elves[n];
}
println!("{}", result);
} else {
println!("Not enough elves");
}
Ok(())
}