কম্পিউটার

জাভাস্ক্রিপ্টে ইতিমধ্যে তালিকাভুক্ত ব্যবধানগুলি সরানো হচ্ছে


সমস্যা

জাভাস্ক্রিপ্ট ফাংশন যা একটি 2-ডি অ্যারে, অ্যার, প্রথম এবং একমাত্র যুক্তি হিসাবে নেয়৷

আমাদের ইনপুট অ্যারের প্রতিটি সাবয়ারে হল ঠিক দুটি সংখ্যার একটি অ্যারে, একটি সময় ব্যবধান নির্দিষ্ট করে৷

আমাদের ফাংশন অ্যারে অ্যারের অন্য একটি ব্যবধান দ্বারা আচ্ছাদিত সমস্ত বিরতি মুছে ফেলা উচিত। ব্যবধান [a,b) ব্যবধান দ্বারা আচ্ছাদিত হয় [c,d) যদি এবং শুধুমাত্র যদি c <=a এবং b <=d। আমাদের ফাংশন শেষ পর্যন্ত অ্যারেতে অবশিষ্ট ব্যবধানের সংখ্যা ফেরত দেবে।

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

const arr = [
   [2, 5],
   [5, 7],
   [3, 9]
];

তারপর আউটপুট −

হওয়া উচিত
const output = 2;

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

ব্যবধান [5, 7] [3, 9] দ্বারা আচ্ছাদিত, তাই এটি সরানো হয়েছে।

উদাহরণ

এর জন্য কোড হবে −

const arr = [
   [2, 5],
   [5, 7],
   [3, 9]
];
const removeCovered = (arr = []) => {
   arr.sort(([a, b], [c, d]) => (a === c ? d - b : a - c));
   let last = arr[0];
   let count = arr.length;
   for(let i = 1; i < arr.length; i++){
      const [a, b] = last;
      const [c, d] = arr[i];
      if(c >= a && d <= b){
         count -= 1;
      }else{
         last = arr[i];
      };
   };
   return count;
};
console.log(removeCovered(arr));

আউটপুট

এবং কনসোলে আউটপুট হবে −

2

  1. আমি কিভাবে জাভাস্ক্রিপ্টে একটি অ্যারে খালি করব?

  2. একটি জাভাস্ক্রিপ্ট ট্রি একটি নোড অপসারণ

  3. জাভাস্ক্রিপ্টে কিভাবে একটি অ্যারে খালি করা যায়

  4. জাভাস্ক্রিপ্ট বেসিক অ্যারে পদ্ধতি