Added counter for tracks the cars are best for in the non-detailed output

This commit is contained in:
Jan-Peter von Hunnius 2024-11-21 10:44:43 +01:00
parent 195a306b79
commit e565866ba8

View file

@ -1,5 +1,5 @@
use scraper::{Html, Selector}; use scraper::{Html, Selector};
use std::collections::{HashMap, HashSet}; use std::collections::{HashMap};
use std::env; use std::env;
use std::fs::read_to_string; use std::fs::read_to_string;
use std::str::FromStr; use std::str::FromStr;
@ -148,7 +148,7 @@ async fn main() {
let tracks = parse_tracks("tracks.txt"); let tracks = parse_tracks("tracks.txt");
let mut keepers: HashSet<String> = HashSet::new(); let mut keepers: HashMap<String, u8> = HashMap::new();
for track in min_track..max_track + 1 { for track in min_track..max_track + 1 {
let track_name = match tracks.get(&track) { let track_name = match tracks.get(&track) {
@ -161,7 +161,7 @@ async fn main() {
let best_car = get_best_car(track, track_name.clone(), level, detailed).await; let best_car = get_best_car(track, track_name.clone(), level, detailed).await;
if best_car.len() > 10 { if best_car.len() > 10 {
// println!("Best Car under RQ {} for track {} ({}): {}", level, track, track_name, best_car); // println!("Best Car under RQ {} for track {} ({}): {}", level, track, track_name, best_car);
keepers.insert(best_car); keepers.entry(best_car).and_modify(|counter| { *counter += 1 } ).or_insert(1);
} }
} }
} }
@ -169,7 +169,10 @@ async fn main() {
// println!("Keepers:"); // println!("Keepers:");
for car in keepers { for car in keepers {
println!("{}", car); match detailed {
true => println!("{}", car.0),
false => println!("{} {}", car.0, car.1)
}
} }
} }