100-days-of-rust/Week-01/Day-03_Barbecue-Skewers/barbecue_skewers/src/main.rs
2024-07-28 13:57:52 +02:00

58 lines
1019 B
Rust

fn bbq_skewers(skewers: &'static [&str]) -> (usize, usize) {
let mut vegetarian = 0;
for skewer in skewers {
if ! skewer.contains('x') {
vegetarian += 1;
}
}
return (vegetarian, skewers.len() - vegetarian);
}
#[test]
fn test1() {
assert_eq!(
bbq_skewers(&[
"--xo--x--ox--",
"--xx--x--xx--",
"--oo--o--oo--",
"--xx--x--ox--",
"--xx--x--ox--"
]),
(1, 4)
);
}
#[test]
fn test2() {
assert_eq!(
bbq_skewers(&[
"--oooo-ooo---",
"--xx--x--xx--",
"--o---o--oo--",
"--xx--x--ox--",
"--xx--x--ox--"
]),
(2, 3)
);
}
#[test]
fn test3() {
assert_eq!(
bbq_skewers(&[
"--oooo-ooo--",
"--xxxxxxxx--",
"--o---",
"-o-----o---x--",
"--o---o-----"
]),
(3, 2)
);
}
fn main() {
println!("Run `cargo test`.");
}