100-days-of-rust/Week-04/Day-27_Task-Scheduler/day27/src/main.rs

34 lines
873 B
Rust

use std::io::{self, Write};
use day27::task_scheduler;
fn main() {
let mut buffer = String::new();
print!("Insert the task as a unique string: ");
io::stdout().flush().expect("Failed to flush");
io::stdin()
.read_line(&mut buffer)
.expect("Failed to read line");
let tasks: Vec<char> = buffer.trim().chars().collect();
buffer = String::new();
print!("Insert the length of the coldown: ");
io::stdout().flush().expect("Failed to flush");
io::stdin()
.read_line(&mut buffer)
.expect("Failed to read line");
let coldown = buffer
.trim()
.parse()
.expect("Coldown must be a valid unsigned integer");
let result = task_scheduler(&tasks, coldown);
println!("The least number of units of times that the CPU will take to finish all the given tasks is {}", result);
}