एल्गोरिथ्म्स और डेटा स्ट्रक्चर्स

Dangerous Experiments

आपको एक ऐसी इमारत दी गई है जिसमें n मंज़िलें हैं और आपके पास k एक जैसी बोतलें मौजूद हैं। हर बोतल को इमारत की किसी भी मंज़िल से गिराया जा सकता है। यदि बोतल को किसी निश्चित मंज़िल या उससे ऊपर से गिराया जाए, तो वह टूट जाती है।
इस समस्या में आपका उद्देश्य यह पता लगाना है कि बोतल के टूटने की सबसे निचली मंज़िल कौन-सी है और इसे निर्धारित करने के लिए आपको न्यूनतम कितने प्रयासों की आवश्यकता पड़ेगी। इन k बोतलों का इस्तेमाल करते हुए आपको यह सीमा (सबसे निचली टूटने वाली मंज़िल) खोजनी है, साथ ही यह सुनिश्चित करना है कि आप प्रयासों की संख्या को यथासंभव कम रखें।
notion image

इनपुट

इनपुट की एकमात्र पंक्ति में दो पूर्णांक n (100 ≤ n ≤ 500) और k (1 ≤ k ≤ 30) दिए होते हैं, जिनका क्रमशः अर्थ इमारत की मंज़िलों की संख्या और उपलब्ध बोतलों की संख्या है।

आउटपुट

आपको सिर्फ एक पूर्णांक प्रदर्शित करना है, जो कि उपलब्ध बोतलों का उपयोग करके बोतल के टूटने की सबसे निचली मंज़िल तलाशने के लिए आवश्यक न्यूनतम प्रयासों की संख्या को दर्शाता है।

उदाहरण

इनपुट
आउटपुट
100 2
14

Constraints

Time limit: 10 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue