কম্পিউটার

জাভাস্ক্রিপ্টে অ্যারেতে সমান বিজোড় জোড় সূচক উপাদানের যোগফল তৈরির মোট সম্ভাব্য উপায়


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম এবং একমাত্র যুক্তি হিসাবে সংখ্যার অ্যারে নেয়৷

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

যেমন −

যদি ইনপুট অ্যারে −

হয়
const arr = [2, 6, 4, 2];

তারপর আউটপুট 2 হওয়া উচিত কারণ, সূচক 1 এবং 3 এ দুটি উপাদান 6 এবং 2 রয়েছে যা সমন্বয় সারণি তৈরি করে।

যখন আমরা −

অ্যারে থেকে 6 মুছে ফেলি
[2, 4, 2] so the sum at odd indices = sum at even indices = 4

যখন আমরা −

অ্যারে থেকে 2 মুছে ফেলি
[2, 6, 4] so the sum at odd indices = sum at even indices = 6

উদাহরণ

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

const arr = [2, 6, 4, 2];
const possibleWays = (arr = []) => {
   const sum = new Array(arr.length);
   let res = 0;
   let oddSum = 0;
   let evenSum = 0;
   for (let i = 0; i < arr.length; ++i) {
      if (i % 2 === 0) sum[i] = (evenSum += arr[i]);
      else sum[i] = (oddSum += arr[i]);
   }
   for (let i = 0; i < arr.length; ++i) {
      if (i % 2 === 0) {
         if (2 * sum[i] - arr[i] + oddSum === 2 * (sum[i - 1] || 0) + evenSum) ++res;
      } else if (2 * sum[i] - arr[i] + evenSum === 2 * (sum[i - 1] || 0) + oddSum) {
         ++res;
      }
   }
   return res;
};
console.log(possibleWays(arr));

আউটপুট

নিম্নোক্ত কনসোল আউটপুট -

2

  1. জাভাস্ক্রিপ্টে সমস্ত সম্ভাব্য বিজোড় দৈর্ঘ্যের সাবারের সমষ্টি

  2. জাভাস্ক্রিপ্টে একটি অ্যারেতে উপাদানগুলির পছন্দসই যোগফল খোঁজা

  3. জাভাস্ক্রিপ্টে জোড় বা বিজোড় হিসাবে অ্যারের যোগফল নির্ণয় করা

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