कल्पना कीजिए कि आप एक बिल्ली के साथ एक ऊंची इमारत में हैं। बिल्ली एक नीची कहानी की खिड़की से बाहर गिरने से बच सकती है, लेकिन अगर उसे ऊंची मंजिल से फेंक दिया जाए तो वह मर जाएगी। कम से कम प्रयासों का उपयोग करके, आप सबसे लंबी ड्रॉप का पता कैसे लगा सकते हैं कि बिल्ली बच सकती है?
जाहिर है, यदि आपके पास केवल एक बिल्ली है, तो आप केवल रैखिक रूप से खोज सकते हैं। पहले पहली मंजिल से बिल्ली को फेंक दो। यदि यह बच जाता है, तो इसे दूसरे से फेंक दें। आखिरकार, फर्श से फेंक दिए जाने के बाद, बिल्ली मर जाएगी। आप तब जानते हैं कि फर्श एफ -1 अधिकतम सुरक्षित मंजिल था।
लेकिन क्या होगा अगर आपके पास एक से अधिक बिल्ली हैं? अब आप कुछ प्रकार के लघुगणक खोज का प्रयास कर सकते हैं। मान लीजिए कि बिल्ड में 100 मंजिल हैं और आपके पास दो समान बिल्लियां हैं। यदि आप पहली बिल्ली को 50 वीं मंजिल से बाहर फेंक देते हैं और वह मर जाती है, तो आपको केवल 50 मंजिलों को रैखिक रूप से खोजना होगा। आप बेहतर कर सकते हैं यदि आप अपने पहले प्रयास के लिए निचली मंजिल चुनते हैं। मान लीजिए कि आप एक बार में 20 मंजिलों की समस्या से निपटने के लिए चुनते हैं और पहली घातक मंजिल # 50 है। उस स्थिति में, आपकी पहली बिल्ली फर्श 60 से मरने से पहले 20 और 40 मंजिलों से उड़ान भरेगी। आपको बस व्यक्तिगत रूप से 49 के माध्यम से फर्श 41 की जांच करनी होगी। यह कुल 12 प्रयास है, जो आपको बाइनरी एलिमिनेशन का उपयोग करने के लिए आपके द्वारा की गई 50 की तुलना में बहुत बेहतर है।
सामान्य तौर पर, 2 बिल्लियों के साथ एन-मंजिला इमारत के लिए सबसे अच्छी रणनीति क्या है और यह सबसे खराब स्थिति है? N मंजिलों और मी बिल्लियों के बारे में क्या?
मान लें कि सभी बिल्लियाँ समान हैं: वे सभी दी गई खिड़की से गिरने से बच जाएँगी या मर जाएँगी। इसके अलावा, हर प्रयास स्वतंत्र है: यदि एक बिल्ली गिर जाती है, तो यह पूरी तरह से अप्रभावित है।
यह होमवर्क नहीं है, हालाँकि मैंने इसे एक बार स्कूल असाइनमेंट के लिए हल किया होगा। यह सिर्फ एक सनकी समस्या है जो आज मेरे सिर में है और मुझे इसका हल याद नहीं है। बोनस अंक अगर किसी को इस समस्या का नाम या समाधान एल्गोरिदम का पता है।