Skip to content

Commit ac75912

Browse files
committed
Create 1518-water-bottles.rs
1 parent f3c2f60 commit ac75912

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

1518-water-bottles.rs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
pub fn num_water_bottles(num_bottles: i32, num_exchange: i32) -> i32 {
2+
let mut current_nil_bottles = 0;
3+
let mut num_bottles = num_bottles;
4+
let mut ret = 0;
5+
loop {
6+
ret += num_bottles;
7+
current_nil_bottles += num_bottles;
8+
num_bottles = 0;
9+
let tmp = current_nil_bottles / num_exchange;
10+
if tmp > 0 {
11+
num_bottles += tmp;
12+
current_nil_bottles -= tmp * num_exchange;
13+
}
14+
if num_bottles == 0 && tmp == 0 { break }
15+
}
16+
ret
17+
}
18+
19+
fn main() {
20+
println!("{:?}", num_water_bottles(15, 4));
21+
}

0 commit comments

Comments
 (0)