ট্র্যাক
/
Scala
Scala
/
অনুশীলনী
/
স্যাডল পয়েন্ট
স্যাডল পয়েন্ট

স্যাডল পয়েন্ট

মধ্যম

ভূমিকা

আপনি আপনার বাড়ির কাছে বনের মধ্যে একটি গাছের ঘর বানানোর পরিকল্পনা করছেন, যাতে সূর্যোদয় ও সূর্যাস্ত দেখতে পারেন।

স্থানীয় একটি জরিপ কোম্পানি থেকে আপনি এমন তথ্য পেয়েছেন, যেখানে মানচিত্রের প্রতিটি আয়তাকার অংশে থাকা প্রতিটি গাছের উচ্চতা দেখানো হয়েছে। গাছের ঘরের জন্য ভালো গাছ খুঁজে পেতে আপনাকে মানচিত্রের প্রতিটি গ্রিড বিশ্লেষণ করতে হবে।

একটি ভালো গাছ হতে হলে দুটোই লাগবে:

  • পূর্ব ও পশ্চিমের প্রতিটি গাছের চেয়ে উঁচু, যাতে সূর্যোদয় ও সূর্যাস্তের যতটা সম্ভব ভালো দৃশ্য আপনি পেতে পারেন।
  • উত্তর ও দক্ষিণের প্রতিটি গাছের চেয়ে খাটো, যাতে গাছে ওঠার পরিমাণ কম হয়।

নির্দেশনা

আপনার কাজ হলো সম্ভাব্য গাছগুলো খুঁজে বের করা, যেখানে আপনি আপনার গাছের ঘর বানাতে পারবেন।

ডেটা কোম্পানি গ্রিড আকারে ডেটা সরবরাহ করে, যেগুলো গাছগুলোর উচ্চতা দেখায়। গ্রিডের সারিগুলো পূর্ব-পশ্চিম দিক নির্দেশ করে, আর কলামগুলো উত্তর-দক্ষিণ দিক নির্দেশ করে।

একটি গ্রহণযোগ্য গাছ হলো সেই গাছ, যা তার সারিতে সবচেয়ে বড়, আবার তার কলামে সবচেয়ে ছোট।

কোনো গ্রিডে একটিও ভালো গাছ নাও থাকতে পারে। আবার একটিও থাকতে পারে, এমনকি একাধিকও থাকতে পারে।

নিচের গ্রিডটিতে ঠিক একটি সম্ভাব্য গাছ আছে।

    1  2  3  4
  |-----------
1 | 9  8  7  8
2 | 5  3  2  4  <--- potential tree house at row 2, column 1, for tree with height 5
3 | 6  6  7  1
  • ২ নম্বর সারিতে মানগুলো ৫, ৩, ২ আর ৪। সবচেয়ে বড় মানটি ৫।
  • ১ নম্বর কলামে মানগুলো ৯, ৫ আর ৬। সবচেয়ে ছোট মানটি ৫।

তাহলে [2, 1] বিন্দুটি (সারি: ২, কলাম: ১) গাছের ঘর বানানোর জন্য দারুণ জায়গা।

GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Scala Exercism

স্যাডল পয়েন্ট শুরু করতে প্রস্তুত?

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