কম্পিউটার

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


একটি ধনাত্মক পূর্ণসংখ্যা n এর বিভাজন হল ধনাত্মক পূর্ণসংখ্যার যোগফল হিসাবে n লেখার একটি উপায়। দুটি যোগফল যেগুলি শুধুমাত্র তাদের যোগফলের ক্রম অনুসারে পৃথক হয় একই বিভাজন হিসাবে বিবেচিত হয়৷

উদাহরণস্বরূপ, 4 কে পাঁচটি স্বতন্ত্র উপায়ে বিভাজন করা যেতে পারে −

4
3 + 1
2 + 2
2 + 1 + 1
1 + 1 + 1 + 1

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একমাত্র যুক্তি হিসাবে একটি ধনাত্মক পূর্ণসংখ্যা নেয়। ফাংশনটি সেই পূর্ণসংখ্যাকে পার্টিশন করার সম্ভাব্য সমস্ত উপায় খুঁজে বের করে ফেরত দিতে হবে।

উদাহরণ

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

const findPartitions = (num = 1) => {
   const arr = Array(num + 1).fill(null).map(() => {
      return Array(num + 1).fill(null);
   });
   for (let j = 1; j <= num; j += 1) {
      arr[0][j] = 0;
   }
   for (let i = 0; i <= num; i += 1) {
      arr[i][0] = 1;
   }
   for (let i = 1; i <= num; i += 1) {
      for (let j = 1; j <= num; j += 1) {
         if (i > j) {
            arr[i][j] = arr[i - 1][j];
         }
         else {
            const exclusive = arr[i - 1][j];
            const inclusive = arr[i][j - i];
            arr[i][j] = exclusive + inclusive;
         }
      }
   }
   return arr[num][num];
};
console.log(findPartitions(4));

আউটপুট

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

5

  1. জাভাস্ক্রিপ্ট ব্যবহার করে ইনপুট সংখ্যা পর্যন্ত যোগফলের সমস্ত সম্ভাব্য প্রাইম জোড়া খুঁজে বের করা

  2. জাভাস্ক্রিপ্টে একটি অ্যারেতে সমস্ত শিখর এবং তাদের অবস্থান খোঁজা

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

  4. সমস্ত সম্ভাব্য উপায়ে একটি পূর্ণসংখ্যার বিভাজন সম্পাদনের জন্য C++ প্রোগ্রাম