extern crate rand;
use rand::Rng;
use std::collections::HashSet;
fn generate_unique_random_numbers(n: usize, min: u32, max: u32) -> Vec<u32> {
let mut rng = rand::thread_rng();
let mut numbers: HashSet<u32> = HashSet::new();
while numbers.len() < n {
let num = rng.gen_range(min..=max);
numbers.insert(num);
}
numbers.into_iter().collect()
}
fn main() {
let n = 8;
let unique_numbers = generate_unique_random_numbers(n, 1, 20);
println!("Unique random numbers: {:?}", unique_numbers);
}
/*
run:
Unique random numbers: [1, 6, 15, 20, 2, 9, 7, 10]
*/