ফুলের ক্ষেত

ফুলের ক্ষেত

কঠিন

ভূমিকা

Flower Field হলো জনপ্রিয় গেম Minesweeper-এর একটি সহানুভূতিপূর্ণ পুনর্কল্পনা। গেমটির উদ্দেশ্য হলো সংখ্যাগত সংকেতের সাহায্যে বাগানের সব ফুল খুঁজে বের করা; এই সংকেতগুলো জানায় একটি ঘরের সঙ্গে সরাসরি (আনুভূমিক, উল্লম্ব বা কর্ণ বরাবর) কতগুলো ফুল সংলগ্ন আছে। ইতালি, জার্মানি, দক্ষিণ কোরিয়া, জাপান ও তাইওয়ানের Microsoft Windows-এর আঞ্চলিক সংস্করণগুলোতে Flower Field অন্তর্ভুক্ত হয়েছিল।

নির্দেশনা

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

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

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

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

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

1*3*1
13*31
·2*2·
·111·

বাগানের ফরম্যাট

বাগানটি একটি নাল-টার্মিনেটেড স্ট্রিং হিসেবে উপস্থাপন করা হয়, যেখানে প্রতিটি সারির শেষে একটি নিউলাইন ক্যারেক্টার থাকে।

একটি উদাহরণ হলো " \n * \n \n"

রেজিস্টার

রেজিস্টার ব্যবহার টাইপ বিবরণ
$a0 ইনপুট অ্যাড্রেস নাল-টার্মিনেটেড ইনপুট স্ট্রিং
$a1 ইনপুট/আউটপুট অ্যাড্রেস নাল-টার্মিনেটেড আউটপুট স্ট্রিং
$t0-9 সাময়িক যেকোনো সাময়িক স্টোরেজের জন্য
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
MIPS Assembly Exercism

ফুলের ক্ষেত শুরু করতে প্রস্তুত?

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

ডিপ ডাইভ: ফুলের ক্ষেত!

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