Skip to content

Commit 48e2d91

Browse files
committed
Add 888-fair-candy-swap.rs
1 parent 0137431 commit 48e2d91

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

888-fair-candy-swap.rs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
pub fn fair_candy_swap(alice_sizes: Vec<i32>, bob_sizes: Vec<i32>) -> Vec<i32> {
2+
let diff: i32 = alice_sizes.iter().sum::<i32>() - bob_sizes.iter().sum::<i32>();
3+
let abs_diff = diff / 2;
4+
let mut ret = vec![];
5+
'o: for i in &alice_sizes {
6+
for j in &bob_sizes {
7+
if abs_diff == *i - *j {
8+
ret = vec![*i, *j];
9+
break 'o
10+
}
11+
}
12+
}
13+
ret
14+
}
15+
16+
fn main() {
17+
println!("{:?}", fair_candy_swap(vec![1, 1], vec![2, 2]));
18+
println!("{:?}", fair_candy_swap(vec![1, 2], vec![2, 3]));
19+
println!("{:?}", fair_candy_swap(vec![2], vec![1, 3]));
20+
println!("{:?}", fair_candy_swap(vec![1, 2, 5], vec![2, 4]));
21+
}

0 commit comments

Comments
 (0)