প্যানকেক বাছাই হ'ল গাণিতিক সমস্যার জন্য প্যানকেকের একটি বিশৃঙ্খলা স্ট্যাক বাছাইয়ের গাণিতিক সমস্যার জন্য যখন একটি স্প্যাটুলা স্ট্যাকের যে কোনও বিন্দুতে সন্নিবেশ করা যায় এবং তার উপরে সমস্ত প্যানকেকগুলি ফ্লিপ করতে ব্যবহৃত হয়। একটি প্যানকেক নম্বর পি (এন) হ'ল এন প্যানকেকের জন্য প্রয়োজনীয় নূন্যতম সংখ্যা । 1
1979 সালে, এক তরুণ বিল গেটস এবং ক্রিস্টোস পাপাদিমিট্রিয়ো একটি কাগজ লিখেছিলেন যা পি (এন) = (5 এন + 5) / 3 এর উপরের সীমানা প্রমাণ করে । 2
আমি মনে করি এটি নিরাপদ যে গেটস (এবং / অথবা পাপাদিমিট্রিউ) তাদের বর্ধিত অ্যালগরিদম ব্যবহার করে প্যানকেক বাছাই করার জন্য একটি প্রোগ্রাম লিখেছিল (সম্ভবত 1979 এর পরে)) যেহেতু গেটস একজন দক্ষ প্রোগ্রামার ছিলেন, তারা সম্ভবত এই কোডটি পাশাপাশি গল্ফ করার চেষ্টা করেছিলেন, তবে উত্স কোডের আকারটি প্রকাশ্যে উপলভ্য নয় (এএফআইএকে)।
চ্যালেঞ্জ:
প্যানকেক বাছাই করে এমন একটি ফাংশন / প্রোগ্রাম তৈরি করুন, যেখানে সর্বাধিক সংখ্যক ফ্লিপ গেটস এবং পাপাদিমিট্রিউয়ের সীমা ছাড়িয়ে যায় না। 3 আপনি যদি তালিকাটি ধারাবাহিকভাবে বর্ধিত বা অবতরণ চান তবে আপনি চয়ন করতে পারেন।
আপনি ধরে নিতে পারেন যে এন <50 । সুতরাং আপনাকে অবশ্যই ফ্লিপের সংখ্যা সীমিত করতে হবে (কিছু এলোমেলোভাবে নির্বাচিত এন- ভ্যালু):
n P(n)
38 65
49 83
50 85
প্রতিটি উল্টানোর আগে আউটপুট স্প্যাটুলার অবস্থান হওয়া উচিত। আউটপুটটি শূন্য বা এক-সূচকযুক্ত হতে পারে এবং আপনি উপরের বা নীচে থেকে গণনা করা হলে আপনি চয়ন করতে পারেন।
অতিরিক্ত নিয়ম:
- রানটাইম অবশ্যই নির্দোষ হতে হবে ic
- কোনও নির্দিষ্ট সময়সীমা নেই, তবে আপনাকে অবশ্যই 50 টি উপাদান সহ একটি তালিকার জন্য আউটপুট সরবরাহ করতে সক্ষম হতে হবে
পরীক্ষার তালিকা:
আমি কঠোর তালিকাগুলি সরবরাহ করতে পারি না (যদি তা হয় তবে আমি একটি কাগজ লিখি, চ্যালেঞ্জ নয়), তাই আমি সংখ্যার কয়েকটি এলোমেলো তালিকা সরবরাহ করব যাতে আপনি নিজের ফাংশন / প্রোগ্রামগুলি পরীক্ষা করতে পারেন। আমি অন্যদের যুক্ত করতে পারি যদি এটি এই তালিকাগুলিতে পরিণত হয় যেখানে "সহজ"।
9, 63, 62, 75, 45, 78, 59, 75, 69, 3, 28, 94, 51, 10, 45, 93, 97, 80, 72, 36, 80, 88, 30, 93, 84, 80, 17, 31, 6, 80, 76, 91, 9, 76, 38, 33, 22, 15, 45, 46, 15, 98, 2, 56, 90, 27, 27, 26, 69, 25
...
74, 89, 57, 52, 70, 96, 16, 5, 77, 84, 54, 13, 90, 64, 31, 80, 3, 25, 13, 19, 13, 34, 1, 79, 35, 43, 4, 19, 82, 29, 48, 95, 97, 28, 45, 62, 64, 82, 70, 34, 38, 15, 51, 83, 21, 66, 4, 42, 74, 84
...
62, 73, 7, 90, 83, 18, 12, 35, 72, 71, 99, 67, 87, 62, 65, 70, 14, 72, 55, 92, 87, 3, 7, 4, 4, 95, 49, 25, 4, 18, 49, 39, 26, 1, 45, 64, 23, 66, 39, 17, 33, 24, 58, 72, 77, 46, 99, 71, 10, 21
আশা করি, বিল গেটস এবং পাপাদিমিট্রিও এই চ্যালেঞ্জটি দেখতে পাবে এবং তাদের কোড সরবরাহ করবে, যাতে আপনি বাস্তবে তাদের আউটগল্ফ করেছেন কিনা তা আমরা নির্ধারণ করতে পারি।
3 আরও ভাল উপরের সীমাটি পাওয়া গেছে তবে আপনাকে সেগুলির যত্ন নেওয়ার দরকার নেই।