[Rust] Binary Heap
\nuse std::collections::BinaryHeap;\n\nimpl Solution {\n    pub fn last_stone_weight(stones: Vec<i32>) -> i32 {\n        let mut heap = BinaryHeap::from(stones)
```\nuse std::collections::BinaryHeap;\n\nimpl Solution {\n    pub fn last_stone_weight(stones: Vec<i32>) -> i32 {\n        let mut heap = BinaryHeap::from(stones);\n        while let Some(stone) = heap.pop() {\n            match heap.pop() {\n                Some(val)   => heap.push(stone - val),\n                None        => return stone,\n            }       \n        }\n        return 0\n    }\n}\n```
[]