(stones: Vec<i32>)
| 1 | pub fn last_stone_weight(stones: Vec<i32>) -> i32 { |
| 2 | let mut stones = stones.clone(); |
| 3 | while stones.len() > 1 { |
| 4 | stones.sort_by(|a, b|b.cmp(&a)); |
| 5 | if stones[0] == stones[1] { |
| 6 | stones.remove(0); |
| 7 | } else { |
| 8 | stones[1] = (stones[1]-stones[0]).abs(); |
| 9 | } |
| 10 | stones.remove(0); |
| 11 | } |
| 12 | if stones.len() > 0 { |
| 13 | stones[0] |
| 14 | } else { |
| 15 | 0 |
| 16 | } |
| 17 | } |
| 18 | |
| 19 | fn main() { |
| 20 | println!("{:?}", last_stone_weight(vec![2,2])); |