Mastermind en Rust
This commit is contained in:
34
src/Rust/005.rs
Normal file
34
src/Rust/005.rs
Normal file
@@ -0,0 +1,34 @@
|
||||
fn mastermind(lst_1: &[i32], lst_2: &[i32]) -> (i32, i32) {
|
||||
let mut index_match: i32 = 0;
|
||||
let mut match_value: i32 = 0;
|
||||
|
||||
for idx in 0..lst_1.len() {
|
||||
if lst_1[idx] == lst_2[idx] {
|
||||
index_match += 1;
|
||||
continue;
|
||||
}
|
||||
if lst_2.contains(&lst_1[idx]) {
|
||||
match_value += 1;
|
||||
}
|
||||
}
|
||||
|
||||
(index_match, match_value)
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let check_1 = vec![2, 6, 0, 7];
|
||||
let check_2 = vec![1, 4, 0, 6];
|
||||
println!("{:?}", mastermind(&check_1, &check_2)); // (1, 1)
|
||||
|
||||
let check_1 = vec![2, 6, 0, 7];
|
||||
let check_2 = vec![3, 5, 9, 1];
|
||||
println!("{:?}", mastermind(&check_1, &check_2)); // (0, 0)
|
||||
|
||||
let check_1 = vec![2, 6, 0, 7];
|
||||
let check_2 = vec![1, 6, 0, 4];
|
||||
println!("{:?}", mastermind(&check_1, &check_2)); // (2, 0)
|
||||
|
||||
let check_1 = vec![2, 6, 0, 7];
|
||||
let check_2 = vec![2, 6, 0, 7];
|
||||
println!("{:?}", mastermind(&check_1, &check_2)); // (4, 0)
|
||||
}
|
||||
Reference in New Issue
Block a user