কম্পিউটার

জাভাস্ক্রিপ্টে সমস্ত সংঘর্ষের পরে অবস্থা খোঁজা


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি অ্যারে, অ্যার, যা একটি এক-মাত্রিক স্থানের বিভিন্ন গ্রহাণুর অবস্থানকে উপস্থাপন করে।

প্রতিটি গ্রহাণুর জন্য, পরম মান তার আকারকে প্রতিনিধিত্ব করে এবং চিহ্নটি তার দিক নির্দেশ করে (ইতিবাচক অর্থ ডান, নেতিবাচক অর্থ বাম)। প্রতিটি গ্রহাণু একই গতিতে চলে।

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

উদাহরণস্বরূপ, যদি ফাংশনে ইনপুট হয়

ইনপুট

const arr = [7, 12, -8];

আউটপুট

const output = [7, 12];

আউটপুট ব্যাখ্যা

12 এবং -8 এর সংঘর্ষ হবে যার ফলে 12 হবে।

7 এবং 12 কখনই সংঘর্ষ হবে না।

উদাহরণ

নিম্নলিখিত কোড -

const arr = [7, 12, -8];
const findState = (arr = []) => {
   const track = []
   for (const el of arr) {
      track.push(el)
      while (track[track.length - 1] < 0 && track[track.length - 2] > 0) {
         const a = -track.pop()
         const b = track.pop()
         if (a > b) {
            track.push(-a)
         } else if (a < b) {
            track.push(b)
         }
      }
   }
   return track
};
console.log(findState(arr));

আউটপুট

[7, 12]

  1. জাভাস্ক্রিপ্ট কনস্ট

  2. জাভাস্ক্রিপ্টে সাজানো ক্রমে স্কোয়ার খোঁজা

  3. জাভাস্ক্রিপ্টে ব্যবধানের অ্যারেগুলির ছেদ খুঁজে বের করা

  4. জাভাস্ক্রিপ্ট ব্যবহার করে অ্যারের মধ্যে সমস্ত সাধারণ উপাদানের যোগফল খুঁজে বের করা