Skip to content

Commit 319b5f7

Browse files
committed
p3191
1 parent f076e03 commit 319b5f7

File tree

2 files changed

+29
-2
lines changed

2 files changed

+29
-2
lines changed

src/main.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
mod p2401;
1+
mod p3191;
22

33
pub fn main() {
4-
p2401::run();
4+
p3191::run();
55
}

src/p3191.rs

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
pub fn run() {
2+
for i in [
3+
vec![0,1,1,1,0,0],
4+
vec![0,1,1,1]
5+
] {
6+
println!("{}", min_operations(i));
7+
}
8+
}
9+
10+
pub fn min_operations(nums: Vec<i32>) -> i32 {
11+
let mut nums = nums;
12+
let mut count = 0;
13+
for i in 0..(nums.len() - 2) {
14+
if nums[i] == 0 {
15+
count += 1;
16+
nums[i] ^= 1;
17+
nums[i + 1] ^= 1;
18+
nums[i + 2] ^= 1;
19+
}
20+
}
21+
22+
if (nums[nums.len() - 1] == 0) || (nums[nums.len() - 2] == 0) {
23+
return -1;
24+
}
25+
26+
count
27+
}

0 commit comments

Comments
 (0)