Bandera tricolor en Rust

This commit is contained in:
2026-05-10 18:58:26 +02:00
parent 0d7a0f9986
commit 002fff8d1d

20
src/Rust/003.rs Normal file
View File

@@ -0,0 +1,20 @@
const ORDER: [&str; 3] = ["R", "A", "M"];
fn tricolor_flag<'a>(lst: &[&'a str]) -> Vec<&'a str> {
let mut ordered_lst = lst.to_vec();
ordered_lst.sort_by_key(|s| {
ORDER
.iter()
.position(|&v| v == *s)
});
return ordered_lst
}
fn main() {
let check = vec!["M","R","A","A","R","R","A","M","M"];
println!("{:?}", tricolor_flag(&check)); // [R,R,R,A,A,A,M,M,M]
let check = vec!["M", "R", "A", "R", "R", "A"];
println!("{:?}", tricolor_flag(&check)); // [R,R,R,A,A,M]
}