কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে অ্যারেতে ন্যূনতম সময় পার্থক্য খুঁজে বের করা


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা ২৪ ঘন্টার ক্লক টাইম পয়েন্টের একটি অ্যারে নেবে "Hour:Minutes" ফরম্যাটে। ফাংশনটি অ্যারেতে যেকোনো দুটি টাইম পয়েন্টের মধ্যে ন্যূনতম মিনিট পার্থক্য খুঁজে বের করবে।

উদাহরণস্বরূপ, যদি ইনপুট হয় –

const arr = ["23:59", "00:00"];

তবে আউটপুট হওয়া উচিত –

const output = 1;

কারণ সময় দুটির মধ্যে ন্যূনত পার্থক্য ১ মিনিট।

উদাহরণ

নিচে কোডটি দেওয়া হল –

const arr = ["23:59", "00:00"]; 
const findMinDifference = (arr = []) => { 
  const find = (str = '') => str.split(':').map(time => parseInt(time, 10)); 
  const mapped = arr.map((time) => { 
    const [hour1, minute1] = find(time); 
    return hour1 * 60 + minute1; 
  }); 
  const sorted = []; 
  let isrepeating = false; 
  mapped.forEach((time) => { 
    if (sorted[time] !== undefined || sorted[time + 24 * 60] !== undefined) { 
      isrepeating = true; 
    } 
    sorted[time] = time; 
    sorted[time + 24 * 60] = time + 24 * 60; 
  }); 
  if (isrepeating) { 
    return 0; 
  } 
  let min = Infinity; 
  let prev = null; 
  for (let i = 0; i < sorted.length; i++) { 
    if (sorted[i] !== undefined) { 
      if (prev) { 
        min = Math.min(min, sorted[i] - prev); 
      } 
      prev = sorted[i]; 
    } 
  } 
  return min; 
}; 
console.log(findMinDifference(arr));

আউটপুট

কনসোল আউটপুট –

1

  1. জাভাস্ক্রিপ্টে অ্যারেতেPECULIAR PAIRS (বিশেষ জোড়া) গণনা করা

  2. জাভাস্ক্রিপ্টে ২-ডি অ্যারের প্রতিটি সারির ন্যূনতম মানের যোগফল

  3. জাভাস্ক্রিপ্টে অ্যারেতে মিডিয়ান সূচক খুঁজে বের করা

  4. C++-এ ন্যূনতম সময় পার্থক্য