RosettaCodeData/Task/100-doors/Rust/100-doors-2.rust

10 lines
506 B
Text
Raw Permalink Normal View History

2013-06-05 21:47:54 +00:00
fn main() {
2017-09-23 10:01:46 +02:00
let doors = vec![false; 100].iter_mut().enumerate()
2018-06-22 20:57:24 +00:00
.map(|(door, door_state)| (1..100).into_iter()
2017-09-23 10:01:46 +02:00
.filter(|pass| door % pass == 0)
.map(|_| { *door_state = !*door_state; *door_state })
.last().unwrap()).collect::<Vec<_>>();
2015-11-18 06:14:39 +00:00
2017-09-23 10:01:46 +02:00
println!("{:?}", doors);
2013-06-05 21:47:54 +00:00
}