100-days-of-rust/Week-01/Day-03_Barbecue-Skewers/barbecue_skewers/src/main.rs

58 lines
1019 B
Rust
Raw Normal View History

2024-07-28 11:57:52 +00:00
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`.");
}