मान लीजिए n भरी हुई पानी की बोतलें हैं, हम m खाली बोतलों को केवल एक भरी बोतल के बदले एक्सचेंज कर सकते हैं। अब एक भरी बोतल पीने से वह खाली बोतल बन जाती है। हमें अधिकतम कितनी पानी की बोतलें पी सकते हैं, यह ढूंढना है।
उदाहरण के लिए, यदि इनपुट n = 9, m = 3 है, तो आउटपुट 13 होगा क्योंकि शुरुआत में हमारे पास 9 बोतलें हैं, सभी पीने के बाद हमें 9/3 = 3 भरी बोतलें मिलती हैं, उन्हें पीने के बाद हमारे पास तीन खाली बोतलें होती हैं और उनका उपयोग करके हम एक और खरीदकर पी सकते हैं, तो कुल 9 + 3 + 1 = 13 बोतलें पूरी हुईं।
समाधान के चरण
x := n,s := 0,k := 0- जब तक
x >= m: k := x % mx := x // ms := s + xx := x + kn + sवापस करें
उदाहरण (पायथन)
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))
इनपुट
9, 3
आउटपुट
13