Syntax error Program to find maximum how many water bottles we can drink in Python

Program to find maximum how many water bottles we can drink in Python



Suppose there are n number of full water bottles, we can exchange m empty water bottles for only one full water bottle. Now drinking a full water bottle makes it an empty bottle. We have to find the maximum number of water bottles we can drink.

So, if the input is like n = 9, m = 3, then the output will be 13 because initially we have 9 bottles, so after drinking all bottles, we can get 9/3 = 3 full bottles, after drinking them all we have three empty bottles and using them we can buy one and drink it, so we completed 9 + 3 + 1 = 13 bottles.

To solve this, we will follow these steps −

  • x:= n, s:= 0, k:= 0

  • while x >= m, do

    • k:= x mod m

    • x:= quotient of x / m

    • s:= s + x

    • x:= x + k

  • return n + s

Example (Python)

Let us see the following implementation to get better understanding −

 Live Demo

def solve(n, m):
   x=n
   s=0
   k=0
   while x >= m:
      k=x % m
      x=x // m
      s=s + x
      x=x + k
   return n + s

n = 9
m = 3
print(solve(n, m))

Input

9, 3

Output

13
Updated on: 2021-05-17T12:23:17+05:30

704 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements