সম্পাদনা করুন: আমি প্রশ্নের শেষে বোনাস ধাঁধাটির প্রথম সলভারের জন্য একটি 100-খ্যাতি বন্টি দেব !
আমি উত্তরটিতে তখনই প্রশ্নের সাথে যুক্ত করব যখন উত্তরটি উপস্থিত হবে কারণ এই অনুগ্রহের কোনও সময়সীমা নেই।
এক-অঙ্কের ধনাত্মক পূর্ণসংখ্যার একটি অ-হ্রাসমান তালিকা দেওয়া, আপনি নির্ধারণ করতে হবে যে অঙ্কগুলি কত গভীরভাবে আঁকবে।
███ ███ A dungeon with 5 blocks removed and a depth of 3.
███ ███
███ ████
████████
খনন শুরুর আগে জমিটি সমতল হয়।
প্রতিটি অঙ্ক নিজেই নীচের থেকে মাটির এক ব্লক সরিয়ে ফেলতে পারে তবে এটি অন্ধকূপের বাইরে থেকে সেই অবস্থানে পৌঁছাতে হবে এবং এটি অপসারণের পরে ব্লকটি অন্ধকূপটি ছেড়ে যেতে হবে। এমনটি করার সময় কোনও অঙ্ক অনুভূমিক পদক্ষেপে তার সংখ্যাসূচক মানের থেকে বেশি নামতে বা উঠতে পারে না ।
অঙ্কগুলি খননের জন্য নিম্নলিখিত কৌশল ব্যবহার করে:
- ক্ষুদ্রতম মানযুক্ত অঙ্কটি প্রথমে খনন করে এবং তার পরে পরবর্তী খনকটি সর্বদা বাকি অঙ্কগুলির থেকে পরবর্তী সর্বনিম্ন মান হয়।
- প্রথম অঙ্কটি যে কোনও অবস্থানে খনন করতে পারে। (সমস্ত স্থল একরকম।)
- নীচের অঙ্কগুলি সর্বদা বামদিকে ইতিমধ্যে শুরু হওয়া কলামে খনন করে যেখানে তারা যেতে এবং বাইরে আসতে পারে। এ জাতীয় কোনও কলাম না থাকলে তারা ডানদিকের ডানদিকে একটি নতুন কলাম খনন শুরু করে।
উদাহরণস্বরূপ অঙ্কগুলি 1 1 1 2 3 3
নিম্নলিখিত অন্ধকূপটি খনন করবে (ধাপে ধাপে ভিজ্যুয়ালাইজেশন সংখ্যার সাথে চিহ্নিত করে কোন ধরণের অঙ্কটি সেই অবস্থানটি খনন করে):
███1████ ███11███ ███11███ ███11███ ███11███ ███11███
████████ ████████ ███1████ ███1████ ███1████ ███13███
████████ ████████ ████████ ███2████ ███2████ ███2████
████████ ████████ ████████ ████████ ███3████ ███3████
████████ ████████ ████████ ████████ ████████ ████████
উদাহরণের জন্য ব্যাখ্যা:
- দ্বিতীয়টি
1
একমাত্র উপলভ্য কলাম থেকে উপরে উঠতে পারে না যদি এটি এটি2
ডিপ-তে আরও গভীর করা হয় তাই এটি ডানদিকে খনন করে। - তৃতীয়টি -দীপ
1
কলাম তৈরি করে2
বামতম স্তম্ভটি খনন করতে পারে কারণ এটি-1
ডিডিপ কলামে এবং তারপরে স্থল স্তরে সরে যেতে পারে । - পরবর্তী
2
এবং3
উভয়ই বামতম কলামে খনন করতে পারে। - গত
3
করতে বামদিকের কলামের খনন কিন্তু পরের এক মধ্যে করতে পারেন না।
ইনপুট
- কমপক্ষে একটি উপাদান সহ ধনাত্মক এক-অঙ্কের পূর্ণসংখ্যার একটি অ-হ্রাসকারী তালিকা।
আউটপুট
- একটি একক ধনাত্মক পূর্ণসংখ্যা, নির্মিত অন্ধকূপটির গভীরতা।
উদাহরণ
ইনপুট => আউটপুট (আউটপুটের অংশ নয় এমন ব্যাখ্যা হিসাবে বাম থেকে ডানে অন্ধকূপটির কলামগুলির গভীরতার সাথে)
[3] => 1
(column depths are [1])
[1, 1, 1, 2, 3, 3] => 4
(column depths are [4, 2])
[1, 1, 1, 1, 1, 1, 1, 1] => 3
(column depths are [3, 2, 2, 1])
[1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5] => 11
(column depths are [11, 6, 2])
[1, 1, 1, 1, 1, 2, 2, 9, 9, 9] => 7
(column depths are [7, 2, 1])
[2, 2, 2, 2, 2, 5, 5, 5, 7, 7, 9] => 9
(column depths are [9, 2])
[1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5] => 10
(column depths are [10, 5])
[1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 5, 5, 5, 5, 7, 7, 9] => 13
(column depths are [13, 5])
[1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9] => 13
(column depths are [13, 5])
[1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9] => 21
(column depths are [21, 12, 3])
এটি কোড-গল্ফ তাই সংক্ষিপ্ত এন্ট্রি জিততে পারে।
বোনাস ধাঁধা
"অঙ্কগুলি খননের জন্য নিম্নলিখিত কৌশলগুলি ব্যবহার করে" বিভাগে বর্ণিত কৌশলটি কি সর্বদা প্রদত্ত অঙ্কগুলির জন্য গভীরতম অন্ধকূপটি প্রমাণ করতে পারে (বা অস্বীকার করতে পারে) ?