আপনার একটি মুদ্রা রয়েছে যা উত্পাদন করে 0
বা 1
। তবে আপনি সন্দেহ করেন যে মুদ্রা পক্ষপাতদুষ্ট হতে পারে , যার অর্থ 0
(বা 1
) এর সম্ভাব্যতা অবশ্যই 1/2 নয়।
একজন সুপরিচিত করার জন্য একটি বাক্সে "রুপান্তর" একটি পক্ষপাতমূলক মুদ্রা পদ্ধতি ন্যায্য মুদ্রা (সমান সম্ভাবনা ফলাফল প্রাপ্ত করার জন্য বড়), যেমন ভন নিউম্যান দ্বারা প্রস্তাবিত নিম্নরূপ, করা হয়। দুটি কয়েন টসসের ব্লকের দুটি মান মুছে না দেওয়া পর্যন্ত ব্লক তৈরি করুন (অ-ওভারল্যাপিং); এবং সেই ব্লকে প্রথম মান আউটপুট করে (দ্বিতীয় মানটিও করবে, তবে এই চ্যালেঞ্জের উদ্দেশ্যে আমরা প্রথমটি বেছে নিই)। স্বজ্ঞাতভাবে, এর 1
চেয়ে বেশি সম্ভাবনা থাকতে পারে 0
, 01
এবং 10
একইভাবে সম্ভবতও হতে পারে।
উদাহরণস্বরূপ, ইনপুটটি 1110...
প্রথম ব্লকটি বাতিল করবে, তারপরে 1
দ্বিতীয় ব্লক থেকে একটি উত্পাদন করবে ...
এই পদ্ধতিটি ব্যয়বহুল , কারণ একক ফলাফল তৈরি করতে বেশ কয়েকটি কয়েন টসস গ্রাস করা হয়।
চ্যালেঞ্জ
মূল মুদ্রার টসগুলি উপস্থাপন করে জিরো এবং সেগুলির সীমাবদ্ধ ক্রম নিন এবং সমস্ত ইনপুট গ্রহন না হওয়া অবধি উপরের পদ্ধতি অনুসারে সর্বাধিক সংখ্যক ফলাফল উত্পন্ন করুন ।
ইনপুট মানগুলির সংখ্যাটি বিজোড় হলে শেষ ব্লকটি অসম্পূর্ণ হতে পারে। উদাহরণস্বরূপ, ইনপুট ক্রমটি 11111
কোনও ফল দেয় না (প্রথম দুটি ব্লকের সমান মান রয়েছে এবং তৃতীয় ব্লকটি অসম্পূর্ণ)।
বিধি
ইনপুটটিতে কোনও ধরণের অ-নেতিবাচক সংখ্যা থাকতে পারে, অগত্যা ইতিবাচক বা এমনকি নয়।
ইনপুট ফর্ম্যাটটি হতে পারে:
- শূন্য এবং বেশী একটি অ্যারে;
- জিরোগুলির একটি স্ট্রিং এবং একটি alচ্ছিক বিভাজক সহ ones
আউটপুট ফর্ম্যাট হতে পারে:
- জিরো এবং একটি স্ট্রিং, বিভাজক বা তার সাথে ছাড়া;
- শূন্য এবং বেশী একটি অ্যারে;
- একক শূন্য বা একযুক্ত স্ট্রিংগুলি, নিউলাইন দ্বারা পৃথক;
- আপনার ভাষা অনুসারে যে কোনও অনুরূপ, যুক্তিসঙ্গত ফর্ম্যাট।
কোড গল্ফ। সবচেয়ে কম বাইট জেতা
পরীক্ষার মামলা
ইনপুট এবং আউটপুট এখানে স্ট্রিং হিসাবে ধরে নেওয়া হয়।
Input --> Output
'1110' --> '1'
'11000110' --> '01'
'1100011' --> '0'
'00' --> ''
'1' --> ''
'' --> ''
'1101001' --> '0'
'1011101010' --> '1111'