একটি আয়তক্ষেত্রাকার দ্বিমাত্রিক গ্রিড বিবেচনা করুন যেখানে প্রতিটি ঘর খালি ( .
) বা পূর্ণ ( 0
) হতে পারে।
যেমন
..00....
0000....
.00000..
000...00
..000000
000.00..
গ্রিডটিকে অসীম হিসাবে বিবেচনা করা হয়, চিত্রিত অঞ্চলের বাইরের সমস্ত ঘর খালি রয়েছে।
লক্ষ্যটি হ'ল ভরাট স্থানগুলি coverেকে রাখা এবং 7 টি স্বতন্ত্র আকারের ইটের একটি সেট ব্যবহার করে খালি স্থানগুলি খোলা ছেড়ে দেওয়া উচিত যা প্রতিটি গ্রিডের 4 টি কোষ (2 × 2) নেয়।
এটি 7 টি ইট:
ব্লক - 1 বৈকল্পিক
11 11
স্ল্যাব - 2 ভেরিয়েন্ট
.. 22
33 ..
সিঁড়ি - 4 ভেরিয়েন্ট
.4 44
5. 55
66 .6
77 7.
এই ইটগুলি সর্বদা একটি গ্রিডের সাথে সারিবদ্ধভাবে আবদ্ধ থাকতে হবে যার সেলগুলি ইনপুট গ্রিডের কক্ষগুলির চেয়ে দ্বিগুণ প্রশস্ত এবং লম্বা। প্রতিটি ইট কেবলমাত্র বৃহত্তর গ্রিডের একটি কক্ষ দখল করতে পারে তবে কভার সন্ধানের জন্য আরও বিকল্প দিতে বৃহত গ্রিডের নীচে ছোট গ্রিডটি অনুবাদ করা যায় (উপরে সরানো, নীচে, বাম, ডানদিকে) be গ্রিড বা স্বতন্ত্র ইট দুটিই ঘোরানো যাবে না।
সুতরাং উপরের উদাহরণটি আড়াল করার একটি উপায় (ওরফে সমাধান) এর মত:
..11....
2211....
.47733..
447...22
..771133
227.11..
(অভিজাত প্রতিবেশী ইটগুলি এখনও অস্পষ্টতা সৃষ্টি করতে পারে তবে বৃহত্তর গ্রিডটি সাবধানতার সাথে চিহ্নিত করা এটি সমাধান করে))
এর জন্য একটি অবৈধ সমাধান
000000
000000
হয়
566774
556744
কারণ ইটগুলি সমস্ত বৃহত্তর গ্রিডের সাথে একত্রিত হয় না বা কেবল এটির একটি ঘরও দখল করে না।
এখানে একটি বৈধ সমাধান একটি সারিতে 3 টি ব্লক:
111111
111111
এবং অন্য বৈধ সমাধানে 6 টি স্ল্যাব জড়িত:
......
222222
333333
......
সুতরাং নোট করুন যে কয়েকটি ইনপুট গ্রিডের একাধিক সমাধান রয়েছে ।
এর জন্য একটি অবৈধ সমাধান
00.00
00...
হয়
11.33
11...
কারণ ইটগুলি বড় গ্রিডের সাথে সারিবদ্ধ হয় না। স্ল্যাবটির জন্য বাম বা ডান একের পর এক চলতে হবে তবে অবশ্যই কভারটি অসম্পূর্ণ থাকবে। এই ইনপুট গ্রিডটির কোনও সমাধান নেই ।
চ্যালেঞ্জ
এমন একটি প্রোগ্রাম লিখুন যা (স্ট্ডিন / কমান্ড লাইনের মাধ্যমে) গ্রন্থটি আবরণে গ্রিডের প্রতিনিধিত্ব করে .
এবং এর পাঠ্যের একটি আয়তক্ষেত্রাকার ব্লক গ্রহণ করে 0
।
যদি কোনও বৈধ আচ্ছাদন সমাধান থাকে তবে উপরের মতো একইভাবে কোনও একটি সমাধান মুদ্রণ করুন (স্টাডাউটের মাধ্যমে) , ইটের মাধ্যমে সমস্তগুলি যথাযথের 0
সাথে প্রতিস্থাপন করুন ।1
7
যদি কোনও সমাধান না হয়, আপনার প্রোগ্রামের কিছু আউটপুট করা উচিত নয়, কেবল চুপচাপ স্বাভাবিকভাবে শেষ হয়।
মন্তব্য
ইনপুট এবং আউটপুট একই আয়তক্ষেত্রাকার মাত্রা প্রয়োজন হয় না। আপনার আউটপুটটিতে বহিরাগত সারি এবং / অথবা সকলের কলাম থাকতে পারে
.
(যতক্ষণ না তারা সমাধানটিকে অকার্যকর করে দেয়)।এটি
.
যদি ভরাট স্থানগুলিকে প্রভাবিত করে না তবে সারণী এবং কলামগুলির সকলের ছাঁটাও ঠিক আছে । যেমন222222 333333
এর একটি বৈধ সমাধান
000000 000000
বিপরীতে, দুটি খালি কলামগুলি
00..00
অপসারণ করা যায়নি কারণ এটি ভরাট স্থানগুলিকে বিশৃঙ্খলা করবে।আপনি বিকল্পভাবে ধরে নিতে পারেন ইনপুটটির একটি একক ট্রেলিং নিউলাইন রয়েছে। আউটপুটে একটি একক পেছনের নতুন লাইন ঠিক আছে, এমনকি কোনও সমাধানের ক্ষেত্রেও।
সম্পূর্ণ খালি (সমস্ত
.
) গ্রিড এবং তুচ্ছ 0 × 0 গ্রিডগুলি আপনাকে উদ্বিগ্ন হওয়া দরকার ইনপুট ক্ষেত্রে নয়। তবে 1 × 10
গ্রিডটি হ'ল অন্যান্য গ্রিড যেমন অন্তত একটি করে থাকে0
। (আপনি ইনপুট গ্রিডের প্রস্থ বা উচ্চতা সমানও বোধ করবেন না!)কোনও প্রোগ্রামের পরিবর্তে আপনি একটি ফাংশন লিখতে পারেন যা ইনপুটটিকে স্ট্রিং আর্গুমেন্ট হিসাবে গ্রহণ করে এবং আউটপুটটিকে সাধারণত প্রিন্ট করে বা স্ট্রিং হিসাবে ফেরত দেয়। কোনও সমাধান না হলে যে কোনও মিথ্যা মান ফিরে পাওয়া যাবে।
আপনি এর পরিবর্তে 9 টি পৃথক মুদ্রণযোগ্য ASCII অক্ষর ব্যবহার করতে পারেন
.
0
1
2
3
4
5
6
7
। আপনার প্রতিস্থাপনগুলি কী ছিল তা নিশ্চিতভাবে নিশ্চিত করুন! নিউলাইনগুলি অবশ্যই যেমন রয়েছে তেমন থাকবে।
স্কোরিং
বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী। টাইব্রেকার সর্বোচ্চ ভোট প্রাপ্ত পোস্ট।
এই চ্যালেঞ্জ দ্বারা অনুপ্রাণিত হয় ব্লক , স্ল্যাব ও সিঁড়ি মধ্যে Minecraft , যা এখানে বর্ণিত একই নিয়ম অনুসরণ করুন। আপনি যদি পিপিসিজি এবং মাইনক্রাফ্ট উপভোগ করেন তবে আপনি পিপিসিজি মাইনক্রাফ্ট সার্ভারটি পরীক্ষা করে দেখতে চাইতে পারেন ।