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

সি ভাষায় নেগেটিভ সংখ্যা রহিত সেটের দুটি সাবসেটের মধ্যে পার্থক্য সর্বোচ্চ করা

একটি পজিটিভ ও নেগেটিভ ইন্টিজার অ্যারে দেওয়া আছে। টাস্ক হলো অ্যারেতে উপস্থিত পজিটিভ ও নেগেটিভ সাবসেটের এলিমেন্টগুলোর মধ্যে সর্বোচ্চ পার্থক্য বের করা। যেহেতু পজিটিভ ও নেগেটিভ সংখ্যার সাবসেট আলাদা, তাই পার্থক্য (পজিটিভগুলোর যোগফল) - (নেগেটিভগুলোর যোগফল) সর্বোচ্চ হবে। কারণ নেগেটিভ বিয়োগ করলে সেটি যোগ হয়ে যায়। সব নেগেটিভকে পজিটিভে কনভার্ট করে সব এলিমেন্ট যোগ করলেই ফলাফল পাওয়া যাবে।

উদাহরণ ১

ইনপুট: Arr[] = {-2, 0, -3, 8, 10, 12, -4}

আউটপুট: সর্বোচ্চ পার্থক্য - ৩৯

ব্যাখ্যা: পজিটিভ সাবসেট {0, 8, 10, 12} যোগফল = ৩০

নেগেটিভ সাবসেট {-2, -3, -4} যোগফল = -৯

সর্বোচ্চ পার্থক্য = ৩০ - (-৯) = ৩৯

উদাহরণ ২

ইনপুট: Arr[] = {-5, -15, -3, -2, 10, 20, 15}

আউটপুট: সর্বোচ্চ পার্থক্য - ৭০

ব্যাখ্যা: পজিটিভ সাবসেট {10, 20, 15} যোগফল = ৪৫

নেগেটিভ সাবসেট {-5, -15, -3, -2} যোগফল = -২৫

সর্বোচ্চ পার্থক্য = ৪৫ - (-২৫) = ৭০

প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • পজিটিভ ও নেগেটিভ ইন্টিজার অ্যারে Arr[] নেওয়া হয়।
  • subsetDifference(int arr[], int n) ফাংশন দুটি সাবসেটের মধ্যে সর্বোচ্চ পার্থক্য বের করে। এটি অ্যারে ও এর সাইজ n আর্গুমেন্ট হিসেবে নেয়।
  • sum=0 ভেরিয়েবল সব এলিমেন্টের যোগফল স্টোর করতে।
  • বাম থেকে ডান ট্রাভার্স: for(i=0; i।
  • যদি করেন্ট এলিমেন্ট নেগেটিভ হয় (<0), তবে -1 দিয়ে গুন করে পজিটিভ করা হয়।
  • প্রতিটি এলিমেন্ট sum-এ যোগ করা হয়।
  • sum রিটার্ন করা হয় যা সর্বোচ্চ সাবসেট পার্থক্য।

উদাহরণ কোড

#include <stdio.h>
int subsetDifference(int arr[], int n) {
    int sum = 0;
    for (int i = 0; i < n; i++) {
        if (arr[i] < 0)
            arr[i] = arr[i] * -1;
        sum += arr[i];
    }
    return sum;
}
// ড্রাইভার কোড
int main() {
    int arr[] = {-1, 3, 5, 17, -32, 12};
    int n = 6;
    printf("সাবসেটগুলোর মধ্যে সর্বোচ্চ পার্থক্য: %d", subsetDifference(arr, n));
    return 0;
}

আউটপুট

সাবসেটগুলোর মধ্যে সর্বোচ্চ পার্থক্য: 70
  1. How to get the difference between two dates in Android?

  2. C# প্রোগ্রাম: দুটি সিকোয়েন্সের পার্থক্য বের করা

  3. C#-এ দুটি তারিখের পার্থক্য বের করা

  4. C# প্রোগ্রাম: দুটি লিস্টের পার্থক্য বের করা