We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 973981e + b99d6ef commit 9fdbcd2Copy full SHA for 9fdbcd2
rust/0875-koko-eating-bananas.rs
@@ -0,0 +1,26 @@
1
+use std::cmp::Ordering::{Equal, Less, Greater};
2
+
3
+impl Solution {
4
+ pub fn min_eating_speed(piles: Vec<i32>, h: i32) -> i32 {
5
+ let max_piles = *piles.iter().max().unwrap() as usize;
6
+ let (mut l, mut r) = (1, max_piles);
7
+ let mut k = max_piles;
8
9
+ while l <= r {
10
+ let m = l + (r - l) / 2;
11
+ let hrs: usize = piles.iter()
12
+ .map(|&num_bananas| ((num_bananas - 1) as usize / m) + 1)
13
+ .sum();
14
15
+ match hrs.cmp(&(h as usize)) {
16
+ Less | Equal => {
17
+ k = k.min(m);
18
+ r = m - 1;
19
+ },
20
+ Greater => l = m + 1,
21
+ }
22
23
24
+ k as i32
25
26
+}
0 commit comments