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

সি++ প্রোগ্রাম: অ্যারে কি দুটি সমান যোগফল والی সাবঅ্যারে (subarray) এ ভাগ করা সম্ভব কিনা যাচাই


একটি অ্যারে A দেওয়া থাকলে, সেটি কি দুটি ভাগে ভাগ করা যায় যাতে দুটি ভাগের যোগফল সমান, তা যাচাই করতে হবে। উপাদান [6, 1, 3, 2, 5] হলে [6, 1] এবং [2, 5] দুটি সাবঅ্যারে बनবে।

এটি সহজে সমাধান করা যায়। প্রথমে সব উপাদানের যোগফল বের করা, তারপর প্রতিটি উপাদানের জন্য ডান পাশের যোগফল বের করা: total_sum - এখন পর্যন্ত পাওয়া যোগফল।

উদাহরণ

#include<iostream> #include<numeric> using namespace std; void displaySubArray(int arr[], int left, int right) {    cout << "[ ";    for (int i = left; i <= right; i++)       cout << arr[i] << " ";       cout << "] ";    }    void subarrayOfSameSum(int arr[] , int n) {       int total_sum = accumulate(arr, arr+n, 0);       int so_far_sum = 0;       for(int i = 0; i 

আউটপুট

subarray 1: [ 6 1 ] subarray 2: [ 2 5 ]

  1. C++-এ বড় সংখ্যা সমান যোগফলের দুই বা অধিক সেগমেন্টে ভাগ করা যায় কিনা চেক করা

  2. C++-এ একটি সংখ্যা দুটি অবানড্যান্ট নম্বরের যোগফল হিসেবে প্রকাশ করা যায় কিনা তা যাচাই করা

  3. C++-এ সম অ্যারে পাজল (Sum Array Puzzle) সমাধান

  4. পাইথনে অ্যারেকে সমান যোগফলवाले সাবঅ্যারে-এ ভাগ করার যোগফল মানগুলো বের করুন