মাইনসুইপার

মাইনসুইপার

মধ্যম

ভূমিকা

মাইনসুইপার একটি জনপ্রিয় গেম, যেখানে ব্যবহারকারীকে সংখ্যাসূচক ইঙ্গিতের সাহায্যে মাইনগুলো খুঁজে বের করতে হয়। এই ইঙ্গিতগুলো জানায়, একটি ঘরের ঠিক পাশে (আনুভূমিক, উল্লম্ব বা কর্ণ বরাবর) কতটি মাইন আছে।

নির্দেশনা

আপনার কাজ হলো একটি সম্পূর্ণ মাইনসুইপার বোর্ডের খালি ঘরগুলোতে মাইনের সংখ্যা যোগ করা। বোর্ডটি একটি আয়তক্ষেত্র, যা এমন ঘর দিয়ে গঠিত যেগুলো হয় খালি (' '), নয়তো মাইন ('*')।

প্রতিটি খালি ঘরের জন্য তার সংলগ্ন মাইনের সংখ্যা গণনা করুন (অনুভূমিক, উলম্ব ও তির্যকভাবে)। খালি ঘরটির আশেপাশে কোনো মাইন না থাকলে সেটি খালি রাখুন। নাহলে সেটিকে সংলগ্ন মাইনের সংখ্যা দিয়ে বদলে দিন।

উদাহরণস্বরূপ, আপনি এমন একটি 5 x 4 বোর্ড পেতে পারেন (স্ক্রিনে দেখানোর জন্য এখানে খালি জায়গাগুলো '·' অক্ষর দিয়ে দেখানো হয়েছে):

·*·*·
··*··
··*··
·····

এবং আপনার কোড এটিকে এভাবে রূপান্তর করবে:

1*3*1
13*31
·2*2·
·111·
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Crystal Exercism

মাইনসুইপার শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Crystal ট্র্যাকের 26টি কনসেপ্ট142টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।

ডিপ ডাইভ: মাইনসুইপার!

আমরা দেখব নেস্টেড for লুপ, বাউন্ড চেকিং সহজ করতে min/max-এর চতুর ব্যবহার, ফাংশনাল পাইপলাইন আর দ্বিমাত্রিক ম্যাট্রিক্সের ব্যবহার।