আমি টালি ধাঁধা স্লাইডিং সত্যিই পছন্দ, কিন্তু সম্প্রতি, আমি তাদের জন্য সময় পাই নি। সুতরাং, আমার স্লাইডিং-টাইল ধাঁধা, বিশেষত ক্লোটস্কি ধাঁধা সম্পর্কে আমার ঠিক করার জন্য একটি প্রোগ্রাম প্রয়োজন need
আপনার ইনপুট নিম্নলিখিত বিন্যাসে হবে:
#######
#001gg#
##.222#
.######
যেখানে #
দেয়ালগুলি .
উপস্থাপিত করে, একটি উন্মুক্ত অঞ্চল g
উপস্থাপন করে, লক্ষ্য উপস্থাপন করে এবং সংলগ্ন সংখ্যাগুলি বিভিন্ন ব্লকের প্রতিনিধিত্ব করে। আপনি ধরে নিতে পারেন:
- 10 টির বেশি ব্লক থাকবে না
- একই সংখ্যা সহ দুটি ব্লক থাকবে না
- সমস্ত ব্লক দেয়াল দ্বারা আবদ্ধ করা হবে
- গ্রিডটি আয়তক্ষেত্রাকার
0
ব্লক বৃহৎ যথেষ্ট লক্ষ্য স্কোয়ার সব আবরণ হয়।- একটি বৈধ সমাধান আছে
আপনার চলার ক্রমটি ফিরে আসতে হবে যা 0
ব্লকটিকে এমনভাবে রাখবে যাতে এটি সমস্ত লক্ষ্য স্কোয়ারকে কভার করে। ব্লকগুলি দেয়াল বা অন্যান্য ব্লকগুলির মধ্য দিয়ে যেতে পারে না। উপরের ধাঁধাটির জন্য, একটি উপযুক্ত ক্রম হবে
2L,1R,1R,1D,0R,0R,0R
2
ব্লকটি 1 বর্গ বামে সরানোর উপস্থাপন করার সময় , 1
ব্লকটি 2 স্কোয়ারের ডানদিকে (গোলের শীর্ষে) তারপর 1 বর্গাকার নীচে এবং তারপরে 0
3 স্কোয়ার ডানদিকে ব্লক করুন।
উপরোক্ত সমস্যার জন্য কার্যত বেশ কয়েকটি সিকোয়েন্স রয়েছে এবং এর মধ্যে কোনও উত্পাদন গ্রহণযোগ্য। আপনার সমাধানটি সর্বোত্তম হওয়া উচিত, এর অর্থ এটি এমন একটি ক্রম তৈরি করা উচিত যা ধাঁধাটি যতটা সম্ভব কয়েকটি পদক্ষেপে সলভ করে।
ক্রমটি উপরে হিসাবে মুদ্রণ করা উচিত, তবে কমা, নিউলাইন বা স্থান পৃথক করা যেতে পারে। পিছনে কমা বা সাদা স্থান আছে কিনা তা আমি চিন্তা করি না। আপনার যুক্তিসঙ্গত সময়ে আউটপুট উত্পাদন করা উচিত (নীচের ধাঁধাতে সর্বোচ্চ 120 সেকেন্ড)।
ধাঁধা 1:
..####..
..#00#..
###00###
#......#
#.1122.#
##3124##
.#3344#.
.##55##.
..#gg#..
..####..
ধাঁধা 2:
######
#1002#
#1002#
#3445#
#3675#
#8gg9#
######
ধাঁধা 3:
.####.
##1g##
#22g3#
#4255#
#4.56#
#.006#
#7008#
######
ধাঁধা 4:
.####.
##00##
#.00g#
#.0.1#
#..g2#
######
এটি কোড-গল্ফ, তাই সংক্ষিপ্ততম সমাধান (বাইটে) জিতেছে!