কল্পনা করুন আপনি একটি বিড়াল নিয়ে একটি উঁচু ভবনে রয়েছেন। একটি ছোট গল্পের উইন্ডো থেকে পড়ে বিড়ালটি বাঁচতে পারে তবে একটি উচ্চ তল থেকে ফেলে দিলে মারা যাবে। সর্বনিম্ন প্রচেষ্টা ব্যবহার করে আপনি কীভাবে বিড়ালটি বেঁচে থাকতে পারবেন এমন দীর্ঘতম ড্রপটি কীভাবে আবিষ্কার করতে পারেন?
স্পষ্টতই, যদি আপনার কেবল একটি বিড়াল থাকে তবে আপনি কেবল রৈখিকভাবে অনুসন্ধান করতে পারেন। প্রথমে বিড়ালটিকে প্রথম তল থেকে ফেলে দিন। যদি এটি বেঁচে থাকে তবে দ্বিতীয় থেকে ফেলে দিন। অবশেষে, মেঝে থেকে ছোঁড়ার পরে, বিড়াল মারা যাবে। আপনি তখন জানেন যে ফ্লোর এফ -1 সর্বাধিক নিরাপদ তল ছিল।
তবে আপনার যদি একাধিক বিড়াল থাকে? আপনি এখন কিছু প্রকারের লগারিদমিক অনুসন্ধান করতে পারেন। ধরা যাক যে বিল্ডটিতে 100 তলা রয়েছে এবং আপনার কাছে দুটি অভিন্ন বিড়াল রয়েছে। যদি আপনি প্রথম বিড়ালটিকে 50 তলা থেকে ফেলে দেন এবং এটি মরে যায়, তবে আপনাকে কেবল 50 তলগুলি রৈখিকভাবে অনুসন্ধান করতে হবে। আপনি যদি প্রথমবারের জন্য নীচের তলটি বেছে নেন তবে আপনি আরও ভাল করতে পারেন। ধরা যাক যে আপনি একবারে 20 তল সমস্যাটি মোকাবেলা করতে বেছে নিয়েছেন এবং প্রথম মারাত্মক তলটি # 50। সেক্ষেত্রে আপনার প্রথম বিড়ালটি 60 ও তল থেকে মারা যাওয়ার আগে 20 এবং 40 ফ্লোরের ফ্লাইটগুলিতে টিকে থাকবে You এটি মোট 12 টি প্রচেষ্টা, যা আপনি বাইনারি নির্মূলের চেষ্টা করার চেষ্টা করলে 50 এর চেয়ে অনেক ভাল।
সাধারণভাবে, সেরা কৌশল কী এবং এটি 2 বিড়াল সহ একটি এন-তলা ভবনের জন্য সবচেয়ে খারাপ জটিলতা? এন ফ্লোর এবং এম বিড়ালদের সম্পর্কে কী?
ধরে নিন যে সমস্ত বিড়াল সমান: তারা সবাই বেঁচে থাকবে বা প্রদত্ত উইন্ডো থেকে পড়ে মারা যাবে। এছাড়াও, প্রতিটি প্রচেষ্টা স্বাধীন: একটি বিড়াল যদি একটি পতন থেকে বেঁচে থাকে, তবে এটি সম্পূর্ণরূপে ক্ষতিগ্রস্থ নয়।
এটি হোমওয়ার্ক নয়, যদিও আমি এটি স্কুল অ্যাসাইনমেন্টের জন্য একবার সমাধান করেছি। এটি কেবল একটি হাস্যকর সমস্যা যা আজ আমার মাথায় .ুকে গেছে এবং সমাধানটির কথা মনে নেই। বোনাস পয়েন্টস যদি কেউ এই সমস্যার নাম বা সমাধান অ্যালগরিদমের নাম জানেন।